Skip to content

Tags: open-gitagent/gitagent

Tags

v2.0.2

Toggle v2.0.2's commit message
chore(release): v2.0.2

Republish of the Windows hook-path fix. 2.0.1 on npm was published from a
feature branch that predated cc81c67, so it shipped the old guard
(`startsWith(allowedBase + "/")`) which always reports "escapes its base
directory" on Windows — the safety hook never ran, so `rm -rf` was not blocked.

2.0.2 is built from main and includes:
- fix: Windows compatibility for hooks and cli tool (#75)
- fix(index): align google provider startup check to GEMINI_API_KEY (#63)
- fix(tool-loader): image output from declarative tools via data URI (#62)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>

v2.0.1

Toggle v2.0.1's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
feat(2.0)!: split voice into @open-gitagent/voice, drop unused deps (#56

)

A hosted dev sandbox blocks every published version (1.5.0–1.5.2 and the
predecessor gitclaw 0.5.0–1.4.1) with HTTP 403 on the tarball fetch. The
trigger is inside the bundle, not the dep tree. Two contributors plus a
user directive to make voice opt-in point to one fix: split the package
so voice is a separate optional install, drop unused deps, and shrink
the surface scanners actually see.

What's in the core (this commit):
- Bump 1.5.2 -> 2.0.0 (semver-major because gitagent --voice no longer
  works on a fresh install of just core)
- Drop baileys (declared but never imported), ws (voice-only),
  @googleworkspace/cli (unused) from dependencies. Drop @types/ws too.
- Tighten the 'files' allowlist to exclude dist/voice/ and dist/composio/
- Move shared types/utilities from src/voice/ into the core surface:
    src/voice/adapter.ts       -> src/adapter.ts
    src/voice/chat-history.ts  -> src/chat-history.ts
- Remove src/voice/* and src/composio/* (all voice-only).
- Re-export the symbols the voice package needs (context, skills,
  workflows, schedules, schedule-runner, chat history, adapter types,
  DEFAULT_VOICE_INSTRUCTIONS) from src/exports.ts.
- --voice in src/index.ts now dynamic-imports @open-gitagent/voice and
  prints an install hint if missing.

install.sh defaults to installing both packages (curl-bash UX is
unchanged); GITAGENT_SLIM=1 opts into a core-only install for sandboxed
or CI environments.

README + Documentation updated with the migration note and the new
two-line install.

Results:
- Tarball 179.5 kB -> 85.7 kB packed (-52%), 752 kB -> 343 kB unpacked
  (-54%), 124 files -> 109. Zero dist/voice/* or dist/composio/* in the
  tarball. node_modules dep count 310 -> 211.
- tsc clean; 27/27 tests pass.

The matching voice package (@open-gitagent/voice) ships separately.

v1.5.0

Toggle v1.5.0's commit message

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
chore: publish as scoped @open-gitagent/gitagent (#45)

Switch the npm package name from the unscoped `gitagent` (which the CI
NPM_TOKEN can't create) to the existing scoped `@open-gitagent/gitagent`,
which the token can publish. 1.5.0 > 0.2.0 so it becomes the new latest.

- package.json + package-lock.json: name -> @open-gitagent/gitagent
  (bin stays `gitagent`, version stays 1.5.0)
- install.sh: scope npm ls/view/install + global-dir refs (the
  `gitagent` command and display strings are unchanged)
- README + Documentation: install command -> npm install -g @open-gitagent/gitagent

npm ci + npm run build verified locally.

v1.4.3

Toggle v1.4.3's commit message
fix: auto-refresh Realtime session before 60-min cap, recover on expiry

OpenAI Realtime sessions are terminated by the server at 60 minutes.
Once the session dies, every further WS message from the browser returns
"server had an error while processing your request", which persisted in
the UI as an unrecoverable failure.

This adds two fixes to OpenAIRealtimeAdapter:

1. Proactive refresh — on session.created, start a 55-minute timer that
   tears down the WS and opens a fresh one with the same instructions,
   tools, and voice. The user sees a sub-second pause instead of a
   hard failure.

2. Reactive recovery — when the server sends an error whose message
   contains "maximum duration" or code is "session_expired", trigger
   the same reconnect flow instead of surfacing the error.

Both paths reuse the existing connectWs + sendSessionUpdateOn logic,
including the ephemeral-token fallback for WebContainer-style hosts.

Bumps version to 1.4.3.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

v1.4.2

Toggle v1.4.2's commit message
feat: add edit tool for string replacement and regex-based editing

Introduces an 'edit' built-in tool that lets the agent modify files
without rewriting them in full. Supports exact string replacement
(default, with uniqueness check), replace_all for bulk substitutions,
and regex mode with $1-style backreferences and custom flags.

Added for both the local filesystem (edit.ts) and E2B sandbox
(sandbox-edit.ts), registered in createBuiltinTools.

Bumps version to 1.4.2.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

v1.4.1

Toggle v1.4.1's commit message
feat: deepen log visibility — global error handlers, HTTP/WS instrume…

…ntation

- Adds process-level uncaughtException, unhandledRejection, and warning handlers
- Logs all HTTP API requests with method, path, status, and duration
- jsonReply auto-logs any 400+ response with error detail
- Adds HTTP server error and clientError handlers
- Adds WebSocket server and per-connection error handlers
- Logs unauthorized WS rejections with remote IP
- WS message handler now logs errors with stack instead of swallowing
- Error objects formatted with full stack traces via formatArg
- Startup banner shows agent dir, model, Composio, Telegram, and auth status

Bumps version to 1.4.1.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

v1.4.0

Toggle v1.4.0's commit message
feat: add unified Logs tab to web UI for real-time log viewing

Adds a new Logs tab that captures all server-side logs (voice, telegram,
whatsapp, triggers, sdk, scheduler) via console intercept and streams
them to the browser in real time over WebSocket. Includes source/level
filtering, text search, auto-scroll, and a REST endpoint for history.

Bumps version to 1.4.0.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

v1.3.3

Toggle v1.3.3's commit message
fix: Lyzr completions endpoint URL, remove x-api-key header (uses Bea…

…rer auth), add SDK example

v1.3.2

Toggle v1.3.2's commit message
fix: auto-detect wss:// for HTTPS (ngrok/tunnels), fix Lyzr provider …

…key resolution

v1.3.1

Toggle v1.3.1's commit message
docs: add comprehensive Documentation.md, fix camera/mic permission m…

…essages on mobile