Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1219 commits
Select commit Hold shift + click to select a range
ded5926
fix(tui): stop queuing decorative animation frames (#3814)
probepark Aug 4, 2026
f9dffed
fix(extensions): preserve live handler context accessors (#3818)
Yeachan-Heo Aug 4, 2026
732856b
fix(session): share one artifact store across the subagent tree (#3813)
Yeachan-Heo Aug 4, 2026
b014ec1
fix(retry): make DeepSeek reasoning-content replay 400 retryable (#3835)
Yeachan-Heo Aug 5, 2026
3902841
fix(memory): defer startup until profiles settle
probepark Aug 5, 2026
c6e1c3c
fix(sdk): lock registerToolSessionTransitionCleanup out of public inv…
innocarpe Aug 5, 2026
c2d800d
fix(session): observe resume picker rejections without process kill (…
innocarpe Aug 5, 2026
4378592
test(memory): raise SDK memory-startup test timeout to 30s
Aug 5, 2026
681a437
fix(ai): honor MiniMax M3 official 1M routes
gaebal-gajae Aug 3, 2026
fd28106
feat(alibaba-token-plan): add qwen-deepseek profile preset
Aug 5, 2026
eff7d8d
fix(alibaba-token-plan): use medium/xhigh for executor/planner
Aug 5, 2026
3a53e71
fix(alibaba-token-plan): route planner max and default high
Aug 5, 2026
f033e51
fix(alibaba-token-plan): raise executor to high reasoning
Aug 5, 2026
ace6c13
feat(alibaba-token-plan): add deepseek-based profile presets
Aug 5, 2026
4c73939
chore(coding-agent): regenerate docs index after adding qwen-deepseek…
Aug 5, 2026
b962e5a
style(ai): collapse existing-lookup to one line for Biome
Aug 5, 2026
4098986
fix(memory): defer startup until model profiles settle (#3839)
Yeachan-Heo Aug 5, 2026
1b65b59
fix(ai): honor MiniMax M3 official 1M routes (#3773)
Yeachan-Heo Aug 5, 2026
5938de5
feat(alibaba-token-plan): add qwen-deepseek and glm-deepseek profile …
Yeachan-Heo Aug 5, 2026
47099f0
docs(ultragoal): document that shared registries always force the com…
Yeachan-Heo Aug 5, 2026
66209ba
fix(notifications): resolve intermediate notifications dir only for e…
innocarpe Aug 5, 2026
d707049
fix(session): recover interrupted managed cleanup receipts (#3840)
innocarpe Aug 5, 2026
f359a9d
fix(coding-agent): bind status-line PR URLs (#3702)
sj0618 Aug 5, 2026
23f606f
fix(session): gate automatic retry after observable stream progress (…
innocarpe Aug 5, 2026
0fdbb5e
fix(ai): delegate lazy stream watchdogs to transports and bound Respo…
innocarpe Aug 5, 2026
0825a42
fix(slack): form-encode Web API requests (#3753)
nahyeongjin1 Aug 5, 2026
aeff50e
fix(tui): restore smooth local loader gradients
Aug 5, 2026
4c07aa4
fix(tui): restore smooth local loader gradients (#3845)
Yeachan-Heo Aug 5, 2026
993bc55
fix(telegram): harden durable topic archive authority (#3828)
twoimo Aug 5, 2026
2464fa2
fix(update): resolve the npm registry from npm config (#3821)
nahyeongjin1 Aug 5, 2026
9583da1
feat(slack): adopt existing threads before readiness (#3816)
nahyeongjin1 Aug 5, 2026
35b0b4c
docs(issues): archive resolved RPC-dogfood findings, keep only live b…
Yeachan-Heo Aug 5, 2026
959632f
docs(issues): fix stale issues/ path reference in sdk-rpc-parity-audit
Aug 5, 2026
844002d
test(ultragoal): backlog-sweep boundary-gate evidence artifacts
Aug 5, 2026
0e9e944
chore: bump version to 0.12.12
Aug 5, 2026
f3a4134
fix(session): graceful fallback for oversized (~64 MiB) session resum…
Yeachan-Heo Aug 5, 2026
3e70c16
fix(telegram): bound reference diagnostics (#3863)
kimdogyeom Aug 5, 2026
3f45ecc
test(tui): pin terminal transport context in G010 scheduler red-team …
Yeachan-Heo Aug 5, 2026
a4d9b54
test(read): batch SQLite table-list fixture creation into one transac…
Yeachan-Heo Aug 5, 2026
6c1c8a4
fix(ai): recover Codex SSE tool-choice rejections (#3699)
sj0618 Aug 5, 2026
11e48d5
fix(ai): dedupe first-class MiniMax M3 catalog ids and add MiniMax-M3…
Yeachan-Heo Aug 5, 2026
f14c6a0
fix(notifications): stop a failed reconciliation pass from exiting th…
yazzang-homelab Aug 6, 2026
ae08898
fix(ask): show multi-select state on remote asks (#3899)
yazzang-homelab Aug 6, 2026
5b50ba5
fix(cli): route bare gjc models to --list-models (#3885)
innocarpe Aug 6, 2026
ae0c4b5
fix(coding-agent): suppress expected interactive cancellation (#3878)
probepark Aug 6, 2026
048c55e
fix(tui): apply slash autocomplete layout (#3861)
kimdogyeom Aug 6, 2026
5ff9a57
fix(workflows): remove literal deep-interview argument placeholder (#…
kimdogyeom Aug 6, 2026
b8b94b7
fix(utils): clamp retry delays at the timer boundary (#3704)
sj0618 Aug 6, 2026
4e33420
fix(agent): finish aborted non-cooperative tool batches (#3894)
probepark Aug 6, 2026
b621997
fix(coding-agent): isolate fork-child provider session identity (#3842)
grantjayy Aug 6, 2026
ab2b14b
fix(gc): treat file-lock walk cap as non-fatal per-root warning (#3884)
innocarpe Aug 6, 2026
b6175ce
fix(coding-agent): hint marketplace-qualified spec when bare plugin i…
yazzang-homelab Aug 6, 2026
8be5076
fix(models): inherit canonical metadata for namespaced custom model i…
innocarpe Aug 6, 2026
0a7f83a
fix(session): recover buried titles in bounded resume listing (#3881)
innocarpe Aug 6, 2026
4d21cf3
fix(coding-agent): expand slash commands in non-interactive runs (#3898)
yazzang-homelab Aug 6, 2026
85e1e6b
fix(notifications): deliver Telegram frames when the paired chat is n…
yazzang-homelab Aug 6, 2026
dd469d6
fix(tui): sync model-picker reasoning menu with role badges (#3886)
innocarpe Aug 6, 2026
4bc67a8
fix(deep-interview): canonicalize Hangul before hashing and capping p…
yazzang-homelab Aug 6, 2026
3774237
fix(coding-agent): assert the cooperative dispose path after #3894 (#…
probepark Aug 6, 2026
c84d0d6
fix(session): soft-handle concurrent receipt disappearance in reconci…
Yeachan-Heo Aug 6, 2026
0bd7d77
fix(rules): inject alwaysApply rules on the default prompt path (#3882)
innocarpe Aug 6, 2026
93e4cb0
feat(acp): emit config option categories and filter model catalog to …
snowykr Aug 6, 2026
2fa5f46
fix: resolve obvious model and todo validation issues (#3924)
Yeachan-Heo Aug 6, 2026
8893c34
feat(ai): default claude-* models to automatic Anthropic prompt cachi…
Yeachan-Heo Aug 6, 2026
1f735b7
fix(ai): repair Anthropic thinking replay rejected via statusless pro…
probepark Aug 6, 2026
538cb43
fix(ai): advance explicit Anthropic cache through tool loops (#3930)
Yeachan-Heo Aug 6, 2026
03008f8
chore: bump version to 0.12.13
Aug 6, 2026
e9274e1
fix(coding-agent): mark mocked query pages complete in ACP production…
Aug 6, 2026
6667c18
fix(coding-agent): mark mocked query pages complete in ACP production…
Aug 6, 2026
42f1091
fix(ai): default compatible Claude gateways to explicit caching (#3933)
Yeachan-Heo Aug 6, 2026
198a569
chore: bump version to 0.12.14
Aug 6, 2026
8a3251c
fix(repo): remove the two files that conflict on every rebase
yazzang-homelab Aug 6, 2026
2c55db4
test(ai): bind cache eval to complete generated inputs (#3937)
Yeachan-Heo Aug 6, 2026
d1eb845
fix(ci): block pull requests that delete released CHANGELOG history
yazzang-homelab Aug 6, 2026
4e32bff
fix(ai): default compatible Claude gateways to explicit caching (#3933)
Yeachan-Heo Aug 6, 2026
e8cdf14
fix(repo): remove the two files that conflict on every rebase
yazzang-homelab Aug 6, 2026
eae301f
test(ai): bind cache eval to complete generated inputs (#3937)
Yeachan-Heo Aug 6, 2026
0a010e2
fix(ci): block pull requests that delete released CHANGELOG history
yazzang-homelab Aug 6, 2026
b755bd2
chore: bump version to 0.12.15
Aug 6, 2026
9775f15
merge: bring main's 0.12.15 release (version bump + release fixes) ba…
Aug 6, 2026
a884843
fix(ai): recover from Anthropic cache breakpoint overflow rejections
probepark Aug 6, 2026
a9fa909
Revert "chore: bump version to 0.12.15"
Aug 6, 2026
0c836b2
fix(ai): recover from Anthropic cache breakpoint overflow rejections
probepark Aug 6, 2026
0e8686f
fix(ai): relocate #3943 changelog entry to Unreleased
Aug 6, 2026
f2c230a
chore: bump version to 0.12.15
Aug 6, 2026
3765d84
fix(ci): reject deleted package changelogs
Aug 6, 2026
473eab9
merge: bring main's corrected 0.12.15 release back into dev
Aug 6, 2026
bceb809
fix(ai): step cache breakpoints down instead of disabling caching out…
probepark Aug 6, 2026
396c238
fix(ai): step cache breakpoints down instead of disabling caching out…
Yeachan-Heo Aug 6, 2026
d2646cb
feat(providers): add ClinePass and Command Code GOAT (#3927)
Yeachan-Heo Aug 6, 2026
2015cc3
fix(scripts): close two dead spots in the SDK canonicalization self-test
Aug 6, 2026
fafe055
fix(agent): name the callable alias when a bridged tool call misses
probepark Aug 6, 2026
a14062a
fix: uninstall GJC plugin bundles
probepark Aug 5, 2026
f8bba00
fix(coding-agent): harden GJC plugin uninstall recovery
probepark Aug 5, 2026
543dd32
test(coding-agent): stabilize corrupt registry fallback assertion
probepark Aug 6, 2026
dec0f55
test(coding-agent): close the requested uninstall regression gaps
probepark Aug 6, 2026
f9c0fe0
fix(test): set 30s timeout on smithery-env-trust child-process tests
gaebal-gajae Aug 6, 2026
460285d
test(coding-agent): correct custom discovery limit contract
gaebal-gajae Aug 6, 2026
1851fd3
fix(test): set 30s timeout on smithery-env-trust child-process tests …
Yeachan-Heo Aug 6, 2026
4f6e860
test(coding-agent): correct custom discovery limit contract (#3961)
Yeachan-Heo Aug 6, 2026
e1cfb8d
test(coding-agent): align onboarding red-team with discovery error co…
gaebal-gajae Aug 6, 2026
23849a8
ci: re-trigger Dev CI for #3966
gaebal-gajae Aug 6, 2026
3832188
test(coding-agent): align onboarding red-team with discovery error co…
Yeachan-Heo Aug 6, 2026
accba29
fix(test): raise smithery-env-trust child-process timeout to 60s
gaebal-gajae Aug 6, 2026
a79df2e
fix(test): raise smithery-env-trust child-process timeout to 60s (#3967)
Yeachan-Heo Aug 6, 2026
1d28c01
test(coding-agent): lock /notify on|off always-pass-through contract
gaebal-gajae Aug 6, 2026
fd4efb4
Merge pull request #3968 from Yeachan-Heo/fix/notify-sdk-only-pass-th…
Yeachan-Heo Aug 6, 2026
05ac260
fix(acp): normalize session/request_permission responses into the SDK…
snowykr Aug 6, 2026
5006314
fix(acp): cover permission response provider path
gaebal-gajae Aug 6, 2026
0c1aac2
fix(test): isolate smithery-env-trust first-spawn cold-start under CI…
gaebal-gajae Aug 6, 2026
5debf24
Merge pull request #3970 from Yeachan-Heo/fix/smithery-env-trust-spaw…
Yeachan-Heo Aug 6, 2026
db5c818
fix(subagent): restore steer for running subagents without a session …
Aug 5, 2026
05b17ac
ci: re-trigger Dev CI after rebase onto origin/dev 38321884
gaebal-gajae Aug 6, 2026
79f7416
fix(session): fail closed when tool-output eviction artifacts are una…
gaebal-gajae Aug 6, 2026
20d8125
style(test): biome format midrun fail-closed fixture
gaebal-gajae Aug 6, 2026
134efb3
fix(notifications): stop a dead Telegram daemon from claiming it is r…
yazzang-homelab Aug 6, 2026
e9e1f3e
Merge pull request #3969 from Yeachan-Heo/fix/midrun-artifact-fail-cl…
Yeachan-Heo Aug 6, 2026
a3e312c
fix(notifications): bump Telegram DAEMON_GENERATION for owner postmortem
gaebal-gajae Aug 6, 2026
f4a37d6
fix(coding-agent): bound busy-reschedule loop for fire-and-forget con…
Heyaaz Aug 6, 2026
322c233
test(notifications): pin DAEMON_GENERATION expectation to 54
gaebal-gajae Aug 6, 2026
91d37b7
Merge pull request #3964 from Heyaaz/fix/agent-continue-busy-reschedu…
Yeachan-Heo Aug 6, 2026
f1eb7b5
fix(notifications): stop a dead Telegram daemon from claiming it is r…
Yeachan-Heo Aug 7, 2026
2e18fde
fix(session): root-store identity for concurrent startup (#3906) + co…
gaebal-gajae Aug 6, 2026
627e87d
Merge pull request #3953 from snowykr/feat/acp-permission-shape
Yeachan-Heo Aug 7, 2026
3946f88
fix(test): unstick Smithery probe lifecycle and pin DAEMON_GENERATION 54
gaebal-gajae Aug 7, 2026
6dac63c
docs: document maintainers and add probepark to the roster
Aug 7, 2026
c5b8797
Merge pull request #3972 from Yeachan-Heo/fix/dev-ci-generation-pin-a…
Yeachan-Heo Aug 7, 2026
694ea10
fix(session): stop reporting every managed-scope failure as binding_i…
chulmin-dev Aug 6, 2026
5e687d2
fix(sdk): derive the SDK scope error union from ManagedScopeErrorCode
chulmin-dev Aug 6, 2026
02e9f68
docs: document maintainers and add probepark to the roster
Aug 7, 2026
2028793
Merge pull request #3960 from chulmin-dev/fix/managed-scope-capacity-…
Yeachan-Heo Aug 7, 2026
9079f1b
feat(acp): bridge workflow-gate asks to the ACP permission channel (#…
snowykr Aug 7, 2026
df4f1f8
fix(telegram): stop shared topic authority outages from crashing the …
Heyaaz Aug 7, 2026
7e59054
Merge pull request #3855 from Yeachan-Heo/fix/steer-regressed
Yeachan-Heo Aug 7, 2026
ecc7296
Merge pull request #3951 from Yeachan-Heo/emergency/coordinator-3906-…
Yeachan-Heo Aug 7, 2026
9748d3e
fix(session): retry message-only first-event timeouts under bare defa…
Aug 6, 2026
5241d83
docs(coding-agent): changelog entry for message-only first-event time…
Aug 6, 2026
a0565c1
refactor(session): drop redundant wrapped watchdog helper
Aug 6, 2026
949fe0e
fix: restore CHANGELOG history after rebase
Aug 6, 2026
c45118b
fix(test): set runtime API key for non-anthropic models in buildBareS…
gaebal-gajae Aug 6, 2026
58913bb
ci: re-trigger Dev CI after rebase onto origin/dev 38321884
gaebal-gajae Aug 6, 2026
ce3eedc
Merge pull request #3908 from Yeachan-Heo/fix/provider-timeout-should…
Yeachan-Heo Aug 7, 2026
25952a2
fix(acp): make advertised mode changes safe (#3912)
probepark Aug 7, 2026
8e2ed33
fix(ai): add explicit Responses relay session affinity (#3918)
probepark Aug 7, 2026
c494d1c
Merge pull request #3920 from probepark/fix/issue-3917-tool-not-found…
Yeachan-Heo Aug 7, 2026
ee4978e
Merge pull request #3875 from probepark/fix/gjc-bundle-uninstall
Yeachan-Heo Aug 7, 2026
40b02f6
Merge pull request #3974 from Heyaaz/fix/telegram-topic-authority-crash
Yeachan-Heo Aug 7, 2026
b0c3513
fix(sdk): deliver reentrant host callbacks without drops
gaebal-gajae Aug 6, 2026
b45e0e9
chore(ci): re-trigger exact-head Dev CI for #3665
gaebal-gajae Aug 6, 2026
4139bfe
test(coding-agent): drain steal lock after readiness in #3761 case
gaebal-gajae Aug 6, 2026
6498f01
Merge pull request #3665 from Yeachan-Heo/fix/dev-ci-66475-tui-tools
Yeachan-Heo Aug 7, 2026
3a80266
fix(ci): exclude legacy native producer from shard matrix
gaebal-gajae Aug 7, 2026
4f8e135
Merge pull request #3979 from Yeachan-Heo/fix/ci-affected-native-rece…
Yeachan-Heo Aug 7, 2026
0f84672
feat(models): overhaul opencodego profile to Kimi K3 (k3-first) (#3978)
Yeachan-Heo Aug 7, 2026
1ae41a1
fix(session): resecure managed legacy-local mode_mismatch on resume (…
Yeachan-Heo Aug 7, 2026
eb3f543
fix(sdk): keep coordinator workflow gates answerable (#3971)
thisisjun786 Aug 7, 2026
7c19f0d
fix(sdk): keep prompt correlation across mid-prompt continuations
probepark Aug 6, 2026
718ab43
fix(acp): make prompt content, limits, and cancellation spec-conformant
probepark Aug 6, 2026
0d47747
fix(todo): accept the operation and field synonyms models actually emit
probepark Aug 6, 2026
8bdf9d9
fix(acp): publish session bootstrap updates only after the response t…
probepark Aug 6, 2026
8c9d692
fix(todo): name the working addressing scheme when a completion has n…
probepark Aug 6, 2026
f0176d8
fix(session): heal mode_mismatch on managed captureTree for legacy lo…
gaebal-gajae Aug 7, 2026
044ffc5
chore(acp): drop managed-legacy-local ownership from #3950
gaebal-gajae Aug 7, 2026
82c47e7
fix(acp): settle prompts correctly and make content, limits, and canc…
Yeachan-Heo Aug 7, 2026
8b824bb
docs(acp): document the local ACP development loop
probepark Aug 7, 2026
7d5dd53
docs(acp): tighten stale-process development guidance
gaebal-gajae Aug 7, 2026
f15a41a
Merge pull request #3977 from probepark/docs/acp-paseo-local-development
Yeachan-Heo Aug 7, 2026
c2a4e40
chore: ignore local RSS checkpoint run state
Aug 5, 2026
9838ba2
feat(sdk): extract a standalone session runtime and lazy-load notific…
Aug 5, 2026
1fafeb9
feat(runtime-mcp): pool MCP connections behind leases and share them …
Aug 5, 2026
9312d9e
perf(natives): load the native addon lazily from every importer
Aug 5, 2026
8d150f8
feat(ai): add a /core entrypoint that excludes provider construction
Aug 5, 2026
7563a9d
refactor(coding-agent): import the AI core surface instead of the pac…
Aug 5, 2026
307851a
feat(agent): do no span work when telemetry spans are disabled
Aug 5, 2026
6661afd
feat(gjc-plugins): cut over to registry v2 with a single execution au…
Aug 5, 2026
f80ef73
fix(computer): restore batch failure shape, timeouts and coordinate v…
Aug 5, 2026
91ff63f
refactor(tools): split tool descriptors from implementations
Aug 5, 2026
5ce13f8
refactor(session): defer session artifact and history storage work
Aug 5, 2026
74db8fb
refactor(coding-agent): keep MCP, skills and eval work off the startu…
Aug 5, 2026
ced1d9c
build: gate the AI core boundary and block the legacy plugin loader s…
Aug 5, 2026
0d2c351
test(harness): add RSS checkpoint and module-trace verification gates
Aug 5, 2026
624526a
fix(sdk): keep session.delete idempotent without cleanup evidence
Aug 6, 2026
087d11e
test(tools): move the catalog reproducibility test out of src
Aug 6, 2026
24d4dba
chore(guard): refresh the daemon generation manifest digests
Aug 6, 2026
5764af9
style: format the perf work and drop its dead leftovers
Aug 6, 2026
7fa3575
fix(sdk): keep the bus native load off the startup await path
Aug 6, 2026
4aae6ab
fix(tools): keep deferred descriptors honest about conditional tools
Aug 6, 2026
0e074fa
fix(ci): enforce team continuation ordering in the canonicalization gate
Aug 6, 2026
84f2854
docs: record the startup memory changes in package changelogs
Aug 6, 2026
3909193
test(ci): make startup harness and descriptor gates self-contained
Aug 6, 2026
3ec3487
fix(runtime): preserve lazy feature behavior at activation boundaries
Aug 6, 2026
f55066c
fix(session): harden lazy managed-storage authority
Aug 6, 2026
69700ec
fix(daemon): advance chat generations for lazy authority
Aug 6, 2026
1ccb5ab
fix(session): reacquire exact authority for stale lock descriptors
Aug 6, 2026
13b45ad
test(session): retry transient large-tree cleanup faults
Aug 6, 2026
436b708
fix(session): fail closed when tool-output eviction artifacts are una…
gaebal-gajae Aug 6, 2026
b111555
fix(ci): reconcile daemon authority after live-base rebase
Aug 7, 2026
9f3eef7
fix(daemon): resolve gen-56 conflict after #3974 rebase
gaebal-gajae Aug 7, 2026
a8851ab
fix(ai): correct rebased core compat type import
Aug 7, 2026
b832794
Merge pull request #3846 from Yeachan-Heo/feat/jcode-research
Yeachan-Heo Aug 7, 2026
b187812
feat(release): add verified nightly deployment cycle
Aug 5, 2026
0bb2295
refactor(release): share nightly version contract
Aug 5, 2026
062b04f
fix(release): harden nightly/stable boundary after review cohort
Aug 5, 2026
5f2150f
fix(release): unify tag/release preflight across stable and nightly
Aug 5, 2026
2154c4b
fix(release): restore create-only tag/release preflight with correct …
Aug 5, 2026
fcf55de
feat(update): add release channel selection to gjc update and settings
Aug 5, 2026
4702f53
fix(update): close channel switch-back and robustness gaps from revie…
Aug 5, 2026
84818aa
fix(release): clear nightly promotion blockers
Aug 7, 2026
50a648e
Merge remote-tracking branch 'origin/main' into nightly
Aug 7, 2026
d0793f7
fix(ci): harden nightly release race coverage
Aug 7, 2026
1234deb
revert(release): restore stable main after mistaken nightly promotion
Aug 7, 2026
7311c48
fix(release): dispatch manual nightlies from dev
Aug 7, 2026
4fc44ba
test(sdk): budget production host restart on loaded shards
Aug 7, 2026
fe415e6
test(natives): make placeholder replacement inode-distinct
Aug 7, 2026
692d711
fix(tools): unify todo_write raw validation and tolerate injected int…
probepark Aug 7, 2026
91c4eff
test(ci): isolate production SDK host integration
Aug 7, 2026
189e07b
test(ci): preserve isolated SDK coverage in targeted plans
Aug 7, 2026
a3d9eb2
fix(sdk): keep the broker restart alive when a session host refuses t…
probepark Aug 7, 2026
a878e80
fix(session): recover closed migration release descriptors
Aug 7, 2026
30da639
feat(prompts): rank explicit skill intent first and stop implicit wor…
Aug 7, 2026
bacc514
feat(hooks): restrict skill keyword autoroute to explicit invocation …
Aug 7, 2026
185c8c8
feat(routing): offer workflow escalation through ask tool and drop ba…
Aug 7, 2026
f1ff4f0
docs(changelog): record explicit-only skill routing under Unreleased
Aug 7, 2026
b9cb171
Merge pull request #3992 from Yeachan-Heo/feat/system-prompt-guidence…
Yeachan-Heo Aug 7, 2026
fd585f2
feat(ai): add JetBrains Junie provider (documented JUNIE_API_KEY surf…
probepark Aug 7, 2026
fa32aec
test(session): cover canonical cleanup pre-open race (#3990)
lightofjeju Aug 7, 2026
0d9fd9c
feat(gc): report managed session scope capacity before it fails close…
chulmin-dev Aug 7, 2026
1aac1f1
fix(acp): settle prompts that end without a normalized terminal (#3997)
probepark Aug 7, 2026
b0bf3ad
fix(repo): untrack committed bun-build intermediate and add `bun run …
probepark Aug 7, 2026
6ee4502
feat(ai): force Codex GPT-5.6 family context window to 372K (#3991)
Yeachan-Heo Aug 7, 2026
6e45efe
feat(sdk): expose model profiles as synthetic gajae-code/<profile> mo…
snowykr Aug 7, 2026
8ee247c
perf(test): capture the sticky-viewport bundle once instead of per ca…
probepark Aug 7, 2026
3a0ec79
fix(sdk): key intent tracing on sub-sessions, not on having a UI (#4004)
probepark Aug 7, 2026
39b1d05
feat(coding-agent): add SSH clipboard transport (--clipboard-transpor…
chulmin-dev Aug 7, 2026
14ae92a
fix(acp): outlive the host heartbeat TTL when reconnecting (#4012)
probepark Aug 7, 2026
a24cdeb
fix: preserve shell mode during prompt submission (#4007)
thegreatesthoneybee Aug 7, 2026
cf8a50a
fix(ci): repair three deterministic Dev CI failures at 14ae92ad3 (#4016)
Yeachan-Heo Aug 7, 2026
d2f845f
test(cli): pin --clipboard-transport/--clipboard-ssh-host in completi…
chulmin-dev Aug 7, 2026
d14dde9
fix(cli): register auth-broker and auth-gateway so documented verbs e…
Yeachan-Heo Aug 8, 2026
998dd50
fix(ai): recover Codex SSE tool-choice rejections (#4026)
sj0618 Aug 8, 2026
1d2e3cc
test(ai): refresh cache placement source evidence
Aug 8, 2026
6ff7845
fix(release): keep generated tool catalog check-clean
Aug 8, 2026
bbd237e
fix(ai): refresh Anthropic cache-eval identity evidence (#4028)
Yeachan-Heo Aug 8, 2026
95a174a
fix(sdk): reserve snapshot writes before close
Aug 8, 2026
08ef163
test(sdk): surface spill-close rejection causes
Aug 8, 2026
fdb4d10
merge: prepare v0.12.16 release
Aug 8, 2026
dd7ff1b
chore: bump version to 0.12.16
Aug 8, 2026
3bddcc5
merge: bring main 0.12.16 release back into dev
Aug 8, 2026
ef9f23b
feat(telegram): harden durable topic authority
twoimo Aug 4, 2026
e1d7897
fix(telegram): require documented archive error code
Aug 8, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
11 changes: 8 additions & 3 deletions .gitattributes
Original file line number Diff line number Diff line change
Expand Up @@ -52,9 +52,14 @@ poetry.lock -text
*.cmd text eol=crlf
*.bat text eol=crlf

# Changelogs are append-mostly; auto-merge by unioning both sides.
packages/*/CHANGELOG.md merge=union

# CHANGELOGs are deliberately NOT given `merge=union`. Union never conflicts --
# it concatenates both sides of an overlapping hunk. Release commits insert
# `## [X.Y.Z]` directly beneath the surviving `## [Unreleased]` heading, so a
# branch that added entries under Unreleased overlaps exactly that region and
# union silently files those entries inside a version that already shipped.
# GitHub also ignores the driver when computing mergeability, so it reported
# phantom conflicts on every PR that touched a CHANGELOG. A real conflict that
# an author resolves is strictly better than a silent misfile.

# Byte-exact render-golden fixtures must never be normalized. Mark them
# -diff too so `git diff --check` does not flag trailing whitespace on raw
Expand Down
10 changes: 9 additions & 1 deletion .github/actions/build-native/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@ inputs:
description: Whether Swatinem/rust-cache should write a cache entry
required: false
default: "false"
nightly_version:
description: Optional immutable nightly SemVer to stage after dependency installation.
required: false
default: ""

runs:
using: composite
Expand Down Expand Up @@ -61,6 +65,10 @@ runs:
bun-version: "1.3"
- shell: bash
run: bun install --frozen-lockfile
- name: Stage nightly release version
if: inputs.nightly_version != ''
shell: bash
run: bun scripts/nightly-release.ts stage --version "${{ inputs.nightly_version }}" --source-sha "${{ inputs.hash }}"
- name: Install cross-compilation toolchain
if: inputs.target == 'aarch64-unknown-linux-gnu'
shell: bash
Expand All @@ -84,7 +92,7 @@ runs:
TARGET_VARIANTS: ${{ inputs.variant }}
# Tag builds ship the size-tuned dist profile (strip=debuginfo,
# fat LTO, panic=unwind preserved); PR/branch builds keep ci.
PI_NATIVE_PROFILE: ${{ startsWith(github.ref, 'refs/tags/v') && 'dist' || '' }}
PI_NATIVE_PROFILE: ${{ (startsWith(github.ref, 'refs/tags/v') || inputs.nightly_version != '') && 'dist' || '' }}
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_GNU_LINKER: aarch64-linux-gnu-gcc
run: bun run ci:build:native
- name: Upload native addon(s)
Expand Down
308 changes: 282 additions & 26 deletions .github/workflows/ci.yml

Large diffs are not rendered by default.

118 changes: 105 additions & 13 deletions .github/workflows/dev-ci.yml

Large diffs are not rendered by default.

10 changes: 10 additions & 0 deletions .github/workflows/public-site-sync.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,12 @@ jobs:
- uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2
with:
bun-version: "1.3"
# The docs index is generated and untracked, and this job deliberately
# skips `bun install` (it only reads repo metadata), so the root `prepare`
# hook never fires here. Build it explicitly, which also keeps the
# staleness assertion in check:public-sync meaningful rather than vacuous.
- name: Build the generated docs index
run: bun --cwd=packages/coding-agent run generate-docs-index
- name: Check local public docs/site/version metadata
run: bun run check:public-sync

Expand All @@ -39,5 +45,9 @@ jobs:
- uses: oven-sh/setup-bun@0c5077e51419868618aeaa5fe8019c62421857d6 # v2
with:
bun-version: "1.3"
# `--live` runs the local surface check too, so it needs the generated
# docs index for the same reason as local-public-sync above.
- name: Build the generated docs index
run: bun --cwd=packages/coding-agent run generate-docs-index
- name: Exercise production remote final-evidence and deployed release-state validation
run: bun scripts/check-public-version-sync.ts --live
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,8 @@ target/
*.node
*.node.build.json
*.b64.js
# `bun build --compile` leaves these next to the entrypoint when it is interrupted.
*.bun-build

# Environment
.env
Expand Down Expand Up @@ -58,6 +60,7 @@ packages/ai/test/.temp-images/
.gjc/rlm/
.gjc/state/
.gjc/_session-*/
.gjc/rss-checkpoints/
.gjc/metrics.json
.pi_config/
.opencode/
Expand Down
213 changes: 127 additions & 86 deletions AGENTS.md

Large diffs are not rendered by default.

21 changes: 21 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
# Contributing to Gajae-Code
Maintainers and their access are listed in [MAINTAINERS.md](./MAINTAINERS.md).

Thanks for contributing. This guide is intentionally short so pull requests land on the right branch with enough context to review.

Expand Down Expand Up @@ -35,6 +36,26 @@ bun run check

Use focused tests first for code changes, then broader checks when the change affects shared behavior or release-critical paths.

## Rebasing onto `dev`

`dev` moves often, so expect to rebase. Two files behave in ways worth knowing about up front.

**`packages/*/CHANGELOG.md` conflicts are normal.** These files have no custom merge driver: if your branch and `dev` both added entries under `## [Unreleased]`, git reports a real conflict. Resolve it by keeping **both** entries under `## [Unreleased]`. Never move an entry into a released `## [X.Y.Z]` section, and never edit a released section — that version already shipped and its notes are historical record.

Resolving one of these by emptying the file is a real hazard, not a hypothetical: ten pull requests across six authors did exactly that within ten minutes of the merge driver being removed, each leaving a one-byte changelog with every released section gone. CI now fails a PR that removes any `## [X.Y.Z]` heading (`scripts/changelog-history-guard.ts`), but check before you push:

```sh
git cat-file -s HEAD:packages/coding-agent/CHANGELOG.md # expect ~300 KB, not 1
```

If it is already lost, recover with `git checkout origin/dev -- packages/<pkg>/CHANGELOG.md` and re-add only your own entry.

**`packages/coding-agent/src/internal-urls/docs-index.generated.ts` is generated and untracked.** `bun install` rebuilds it through the root `prepare` hook, and `bun run generate-docs-index` rebuilds it on demand. Do not commit it. If you see it in `git status`, something forced it back into the index — `git rm --cached` it. A tracked copy inlines every doc onto a single line, which git cannot three-way merge, so it conflicts on every rebase.

## Nightly release operations

The `CI` workflow publishes a nightly prerelease from `main` at 04:23 UTC. Maintainers can run the same cycle with **Run workflow → nightly-release**. The run must pass the complete main check/test graph before publication, then publishes all public packages under the npm `nightly` dist-tag and creates a matching immutable GitHub prerelease with binaries and package-evidence assets. Do not create or move nightly tags manually, and do not edit package versions or `[Unreleased]` changelog sections for a nightly run; version staging is ephemeral inside CI.

## PR checklist

- Target branch is `dev`, not `main`.
Expand Down
10 changes: 5 additions & 5 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 3 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ exclude = ["crates/brush-core-vendored", "crates/brush-builtins-vendored", "crat
resolver = "3"

[workspace.package]
version = "0.11.6"
version = "0.12.16"
edition = "2024"
license = "MIT"
authors = ["Yeachan-Heo"]
Expand Down Expand Up @@ -254,8 +254,10 @@ windows-sys = { version = "0.61", features = [
"Win32_Storage_ProjectedFileSystem",
"Win32_System_Com",
"Win32_System_IO",
"Win32_System_JobObjects",
"Win32_System_Ioctl",
"Win32_System_LibraryLoader",
"Win32_System_ProcessStatus",
"Win32_System_Threading",
] }
winreg = "0.56"
Expand Down
26 changes: 26 additions & 0 deletions MAINTAINERS.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Maintainers

Maintainers own the `gajae-code` repository: they review and merge pull requests,
drive the `dev` → `main` release flow, and are reachable for governance decisions.

## Roster

| GitHub | Role | Access |
| --- | --- | --- |
| [Yeachan-Heo](https://github.com/Yeachan-Heo) | Owner / maintainer | admin |
| [probepark](https://github.com/probepark) | Maintainer | write |
| [HaD0Yun](https://github.com/HaD0Yun) | Collaborator | write |
| [IYENTeam](https://github.com/IYENTeam) | Collaborator | write |

Access is granted at the GitHub repository level. Because `gajae-code` is owned by
a personal account, GitHub does not expose the org-only `maintain`/`triage` roles;
the closest equivalent is the **write** (push) role, which covers day-to-day
maintenance — pushing to `dev`, reviewing and merging PRs, and managing issues and
PRs. `admin` is reserved for the repository owner.

## Branch and review policy

- All PRs target `dev`. `main` is reserved for maintainer-directed release flow.
- Maintainers review and merge PRs against `dev` and drive releases to `main`.
- See [CONTRIBUTING.md](./CONTRIBUTING.md) for the contribution flow and the
changelog/merge-driver rules that apply to every PR.
25 changes: 21 additions & 4 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,3 @@
<p align="center">
<img src="assets/logo-vertical.png" alt="Gajae-Code vertical logo" width="320" />
</p>

<p align="center">
<img src="assets/hero.png" alt="Gajae-Code autonomous coding-agent hero illustration" width="100%" />
Expand Down Expand Up @@ -91,6 +88,18 @@ bun install -g gajae-code

The scoped package is also available as `@gajae-code/coding-agent`.

### Nightly channel

A verified nightly prerelease is published from `main` at 04:23 UTC and can also be started manually with the **nightly-release** CI dispatch. Nightly runs execute the complete main verification graph, build every supported native addon and standalone binary, publish the exact package set under the npm `nightly` dist-tag, and create a matching GitHub prerelease with package evidence. They do not move npm `latest`, rewrite `main`, or consume the `[Unreleased]` changelog sections.

```sh
bun install -g gajae-code@nightly
gjc --version
gjc --smoke-test
```

Already on GJC? Switch channels without reinstalling: `gjc update --channel nightly` moves to the latest nightly, and `gjc update --channel stable` switches a nightly install back to the latest stable (the command detects the channel switch and installs even though stable is semver-lower than the nightly). To make a channel the default for both `gjc update` and the startup update check, set **Settings → Interaction → Update Channel** (the `startup.updateChannel` setting). In the brief window where a nightly shares the stable core version, add `--force` to move onto it.

### Shell completion

GJC can generate a Fig/withfig-compatible spec for [Microsoft inshellisense](https://github.com/microsoft/inshellisense):
Expand Down Expand Up @@ -251,6 +260,12 @@ gjc setup defaults --check

For evaluating Aside as an opt-in search/context retrieval sidecar, see [`docs/aside-integration.md`](docs/aside-integration.md). For generic third-party bot setup and provider-independent smokes, see [`docs/bot-integration.md`](docs/bot-integration.md). For external-control readiness, see [`docs/external-control-readiness.md`](docs/external-control-readiness.md). For the wire protocol and machine interfaces, see [`docs/sdk.md`](docs/sdk.md).

## SDK Extensions

- [gjc-remote](https://github.com/kogangdon/gjc-remote) — a real-world SDK extension for controlling allowlisted GJC sessions on remote hosts from Discord.
- [oh-my-gajae-code](https://github.com/devswha/oh-my-gajae-code) — a community plugin marketplace for installing additional workflow skills and slash commands.
- [GJC multivendor setup guide](https://github.com/project820/gjc-multivendor-setup-guide) — role-based provider profiles and installable model bundles for multivendor GJC setups.

## Configuration

Provider retry budgets live in `~/.gjc/config.yml`:
Expand All @@ -271,6 +286,8 @@ Interactive startup checks the npm registry for a newer GJC version in the backg

Run `gjc config set startup.checkUpdate false` to disable the launch-time check. Registry or network failures are ignored so they do not block startup.

Both the launch-time check and `gjc update` resolve the registry the way npm does — `BUN_CONFIG_REGISTRY` or `npm_config_registry` from the environment, a scoped `@gajae-code:registry` key, then your user and machine-wide `.npmrc`, including the credentials registered for that registry. A mirrored or firewalled network is therefore checked at the same place the update would install from. A `.npmrc` in the current working directory is deliberately ignored, so a repository you have cloned cannot redirect the check or choose the credential it carries. `bunfig.toml` is not read, so a mirror declared only there is still checked against the public registry.

### Good to read together

- [GJC multivendor setup guide](https://github.com/project820/gjc-multivendor-setup-guide) — a community guide for role-based provider/profile selection across Anthropic, OpenAI/Codex, Google/Gemini, xAI/Grok, and opencode-go. Treat its presets as user-level configuration guidance rather than bundled defaults; verify model availability and provider auth in your own environment before adopting them.
Expand Down Expand Up @@ -350,7 +367,7 @@ For a package-by-package map, see [`docs/codebase-overview.md`](docs/codebase-ov

## Contributors

Thanks to the people and agents helping shape the early Gajae-Code releases, including [Yeachan-Heo](https://github.com/Yeachan-Heo), [IYENTeam](https://github.com/IYENTeam), and [HaD0Yun](https://github.com/HaD0Yun). Contributions, bug reports, and release validation are welcome through GitHub and the Discord community.
Thanks to the people and agents helping shape the early Gajae-Code releases, including [Yeachan-Heo](https://github.com/Yeachan-Heo), [IYENTeam](https://github.com/IYENTeam), [HaD0Yun](https://github.com/HaD0Yun), and [probepark](https://github.com/probepark). Contributions, bug reports, and release validation are welcome through GitHub and the Discord community.

## Inspirations and lineage

Expand Down
Loading