Commit Graph
40 Commits
Author SHA1 Message Date
KRATOSandClaude Opus 4.8 2ee03ac854 audit2: cli + modelregistry + dead-code cleanup (2 med, rest low)
cli: --reasoning-effort notice evaluates the EFFECTIVE model (works without --model) (MED); unsafe warning fires for --auto high too (MED); --auto value validated even with --skip-permissions-unsafe (LOW); DefaultRegistry built once per exec, not 3x (LOW); --profile kept as intentional legacy-compat accept-and-ignore (contested finding resolved, doc-commented). modelregistry: removed dead FallbackFor. tools: removed dead TaskNonInteractiveMessage + dead OnSandboxDecision hook (no setter anywhere); fixed the now-stale loop.go comment. TDD where behavioral; build/vet/full-suite green.

Refs #102

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-07 10:21:36 +05:30
KRATOSandClaude Opus 4.8 a180c32646 audit fixes: tui + cli (H5,H7,H8,M11 + lows)
Cancelled runs now flush in-flight session events incl. checkpoints so /rewind works + no orphaned blobs (H5); shift+tab cycles permission mode Auto/Ask/Unsafe (H7); interactive TUI defaults to Ask so write/edit/bash/apply_patch are advertised + gate through the permission prompt (H8 — VERIFY LIVE); zenline skin renders the ask_user questionnaire instead of a spinner when a prompt is pending (M11); applyExecMode runs before filter validation + --list-tools (low); mode-model deprecation notice surfaced via the shared --model path (low); zenline listed in --help (low). TDD incl. -race; build/vet/full-suite green.

Refs #102

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-07 02:41:17 +05:30
KRATOSandClaude Opus 4.8 29fe8e0c32 Batch 4: plugin manifest enrichment + skills system (PRD F9/F15)
Plugins: LoadedPlugin gains optional Author/License/Keywords/Homepage/Interface metadata (omitempty, non-breaking, best-effort parse) surfaced in 'zero plugins'. Skills: new internal/skills package loads */SKILL.md (hand-parsed frontmatter, no YAML dep) from ZERO_SKILLS_DIR or the XDG data dir; a read-only 'skill' tool lets the agent load a named skill's content on demand (registered in CoreReadOnlyTools); 'zero skills' lists them (+--json). Build/vet/-race/full-suite green.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-07 00:58:28 +05:30
KRATOSandClaude Opus 4.8 fa7cdef14d Slice 8: compaction execution — LLM-driven history compaction for long sessions
Proactive compaction at 80% of the model context window + reactive recovery on context-limit errors: summarizes the oldest middle messages into one user-role summary, preserves system + recent suffix. Pure Compact() (injectable Summarizer), low-water-mark guard against churn, suffix walked back to an assistant boundary so no consecutive-user/dangling-tool-result sequences, recover() gated on enabled. Disabled (no-op) when ContextWindow==0 — wired from the resolved model's context window in CLI+TUI. Build/vet/-race green.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-06 23:19:59 +05:30
KRATOSandClaude Opus 4.8 45be88a6d8 Slice 7: agent modes — --mode flag + /mode command presets
Data-driven presets (smart/deep/fast/large/precise) bundling model + reasoning effort + max turns (+ optional tool filter), resolved through the registry. --mode seeds only unset exec options so explicit --model/-r/--max-turns still win; /mode lists/switches in the TUI. Build/vet/test green.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-06 23:03:43 +05:30
KRATOSandClaude Opus 4.8 4c5fc2fc0e Slice 6: ask_user tool — agent asks clarifying questions mid-run
New read-only ask_user tool (questions[] with options/multiSelect); the loop intercepts it like permissions and routes to Options.OnAskUser. TUI shows an async questionnaire (buffered channel + ctx.Done select, mirroring the permission flow — no deadlock); headless leaves OnAskUser nil so it degrades gracefully to 'proceed with assumptions'. Build/vet/-race green; 13 new tests.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-06 22:55:37 +05:30
KRATOSandClaude Opus 4.8 7634c08c1c Slice 4: sandbox depth — interactive/destructive command safety + confirmation policy
Pre-exec interactive-command detection (editors/pagers/REPLs/ssh/git-rebase-i) hardened against absolute-path, quoted, and $()/backtick-substitution bypasses; destructive-pattern hardening (fork bombs, block-device writes, rm -rf root variants); structured violation annotation on blocked bash; CONFIRMATION_POLICY embedded + appended to the system prompt; 'zero sandbox policy --effective'. Full 4-action permission-engine / 5x3 autonomy matrix deferred. Build/vet/-race green.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-06 22:37:55 +05:30
KRATOSandClaude Opus 4.8 30545b4417 Slice 3: model registry depth — regex aliases, deprecation fallback, reasoning defaults
Resolve()/ResolveWithFallback()/FallbackFor() + DefaultReasoningEffort/EffectiveReasoningEffort wired into CLI --model and TUI /model (deprecated models auto-redirect with a notice; unknown ids like minimax-m3 pass through unchanged). zero models renders an aligned table; catalog entries decorated with match patterns/default efforts/deprecation rules. Provider reasoning-effort propagation deferred (needs request-schema change). Build/vet/test green.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-06 22:16:33 +05:30
KRATOSandClaude Opus 4.8 80d817045d Zenline TUI + runtime-core reliability + session file checkpoints
Local development snapshot of one session's intertwined workstreams. Committed together because changes span shared files (provider.go, model.go, loop.go, types.go, streamjson) and can't be cleanly split without interactive hunk staging. Build + vet + full -race suite green.

Zenline TUI skin: Zen home / Statusline chat / permission-modal surfaces, 5 themes (Phosphor/Cyan/Sage/Violet/Mono), boot splash, mouse support, and a headless --snapshot mode (internal/zenline, cli/zenline.go, tui/zenline_view.go).

OpenAI provider: streaming tool-call accumulation hardening plus an idle-timeout watchdog (reader goroutine + context cancel) so a stalled upstream surfaces an error instead of hanging the agent forever.

Agent reliability: update_plan schema makes id optional/auto-numbered with an advertised item schema; malformed (nameless) tool calls feed a retry to the model instead of silently ending the turn; secret scrubbing at the registry boundary (covers agent loop AND MCP); structured ToolResult (changedFiles/display/redacted) surfaced via stream-json.

Session file checkpoints + safe rewind: before-mutation content snapshots (content-addressed, deduped, size-capped, 0600) captured on write/edit/apply_patch in TUI and headless; RestoreToSequence + ApplyRewind (path-traversal-guarded, session-locked); /rewind in TUI and 'zero sessions rewind' headless; stream-json checkpoint/restore events.

Design specs under docs/superpowers/specs/.

Co-Authored-By: Claude Opus 4.8 (1M context) <[email protected]>
2026-06-06 21:41:38 +05:30
Anandan 699df010e2 feat(update): verify release metadata by target (#97)
* Add update check target selection

* Reject empty update target flag
2026-06-06 15:58:41 +05:30
Anandan 3e4add95ab feat(update): expose release check target options (#96)
* Expose update check target options

* Reject non-positive update timeouts
2026-06-06 15:28:50 +05:30
Vasanth T 52fbb6d9e7 feat: add runtime permission decisions (#95) 2026-06-06 15:26:33 +05:30
Anandan 90b3cf1093 Add sandbox backend capability reporting (#94) 2026-06-06 15:04:20 +05:30
Vasanth T 5b1b7edf74 feat(tui): surface sandbox permission events (#93)
* feat(tui): surface sandbox permission events

* fix(tui): stream permission rows live
2026-06-06 14:18:36 +05:30
KRATOSandKRATOS 34ad21a551 Add runtime permission and verification event contracts (#82)
* feat: add runtime permission event contract

* feat: stream permission events from exec

* feat: add runtime command snapshots

* feat: add session rewind compaction plans

* feat: add verification event contracts

* fix: harden runtime contract review gaps

* test: assert approved exec stderr contract

* fix: address CodeRabbit CHANGES_REQUESTED items for #82

- Make OnSandboxDecision callback async + panic-safe (non-blocking, recovered) in tools/registry.go per CR.
- Add explicit regression test for ConfigSnapshot when ResolveRuntimeMetadata errors (no secret leak in Message/BaseURL).
- (Many prior items like shapedPayloadPreview for permission/tool events, dual-target conflict test, stderr empty on approved path, Kind/Framework preservation, redactCommand empty slice, etc. were already landed on this branch.)

All relevant tests now pass.

* fix(agent): make sandbox decision available synchronously on Result for permission events

The recent change to invoke OnSandboxDecision asynchronously (to satisfy non-blocking requirement) broke the agent's immediate capture of the decision for building PermissionEvent after registry.RunWithOptions.

- Add SandboxDecision *sandbox.Decision to tools.Result (not serialized).
- Populate it on all sandbox-involved return paths in registry.RunWithOptions (sync, before/while firing async callback for observers).
- In agent executeToolCall, use result.SandboxDecision for buildPermissionEvent (reliable ordering) instead of side-effect capture via the callback.
- The async callback is still supported for any external OnSandboxDecision consumers.

This fixes the two failing agent tests that were causing the cross-platform 'Smoke' CI jobs to fail on this PR:
- TestRunEmitsPermissionEventForPersistentSandboxGrant
- TestRunAppliesSandboxEvenInUnsafeMode

All go tests now pass.

---------

Co-authored-by: KRATOS <[email protected]>
2026-06-06 13:13:08 +05:30
Anandan 04808f6abd Verify update release assets (#84) 2026-06-06 11:16:44 +05:30
Anandan 1974a19e84 Report sandbox platform capabilities (#81) 2026-06-06 10:59:21 +05:30
KRATOS 623c53e324 feat: harden sandbox command execution (#79)
* feat: add sandbox command runner

* feat: route shell tools through sandbox engine

* test: cover sandboxed shell execution
2026-06-06 09:20:25 +05:30
KRATOS 29aec1b190 feat: add M6 sandbox backend (#77)
* feat: add sandbox policy backend

* feat: enforce sandbox decisions in tool runtime

* feat: add sandbox policy and grants CLI

* fix: honor sandbox grants in registry
2026-06-05 19:25:49 +05:30
KRATOS b973084969 feat: add M5 self verification backend (#76)
* feat: add self verification backend

* feat: wire verify attempts to self verification
2026-06-05 18:48:24 +05:30
KRATOS 8e1e74ad4b feat: add M5 test runner backend (#74)
* feat: add test runner backend

* feat: surface test summaries in verify

* fix: address test runner review feedback
2026-06-05 18:02:20 +05:30
KRATOS 4eacb5b6d3 feat: add M5 git workflow backend (#72)
* feat: add Zero git change backend

* feat: add self verification summaries

* feat: expose git workflow CLI

* fix: address M5 review feedback

* fix: clean up zerogit review nits
2026-06-05 17:32:05 +05:30
Vasanth T 43c256068a feat: make Go runtime the app path (#71)
* feat: make go runtime the app path

* fix: harden update semver parsing
2026-06-05 17:24:58 +05:30
KRATOS a58e6c4f57 feat: add Go worktree and verification backend (#70)
* feat: add Zero worktree isolation backend

* feat: add Zero verification runner backend

* feat: wire worktree and verification commands

* fix: address worktree verification review feedback

* test: tighten worktree base dir assertion

* fix: redact workflow CLI output paths

* fix: keep workflow diagnostics useful while redacted
2026-06-05 16:39:01 +05:30
gnanam1990 53097ab220 fix: address session lineage review feedback 2026-06-05 15:48:11 +05:30
gnanam1990 b5eec64acf feat: add Go session lineage backend 2026-06-05 15:48:11 +05:30
gnanam1990 2a5b89c095 feat: expose MCP server CLI 2026-06-05 14:03:47 +05:30
gnanam1990 4e19bd992f fix: address MCP review feedback 2026-06-05 13:43:51 +05:30
gnanam1990 e8e77c8a8f [codex] expose MCP tools in Go CLI 2026-06-05 13:43:51 +05:30
Vasanth T ef20e4bcae feat: add Go command center (#63)
* feat: add Go command center

* fix: address command center review

* fix: redact command center base urls

* test: cover command center redaction streams
2026-06-05 13:26:22 +05:30
KRATOSandKRATOS f43db6f600 [codex] add Go extension backend commands (#61)
* feat(go): add plugin manifest backend

* feat(go): add extension policy stores

* feat(go): expose extension backend commands

* fix(go): reject rooted plugin paths cross-platform

* fix(go): address extension backend review

* fix(go): harden extension backend persistence

* fix(go): preserve extension usage and hook enabled semantics

* fix(go): use process-released MCP permission locks

* fix(plugins): close symlink missing-leaf escapes

* fix(plugins): fail closed on manifest realpath errors

* fix(tests): keep plugin realpath regression portable

* fix: enable CodeRabbit verdict workflow

---------

Co-authored-by: KRATOS <[email protected]>
2026-06-05 12:11:36 +05:30
Vasanth T a710b0e5f5 feat: add Go headless protocol sessions (#60)
* feat: add Go headless protocol sessions

* test: harden stream-json tool list filtering

* fix: resolve stream-json review followups

* chore: enable coderabbit review verdicts
2026-06-05 10:41:38 +05:30
KRATOSandKRATOS 152bb6b62d [codex] add Go observability backend commands (#59)
* feat(go): add observability backend primitives

* feat(go): add session search and doctor backends

* feat(go): expose observability cli commands

* fix(go): address observability review feedback

---------

Co-authored-by: KRATOS <[email protected]>
2026-06-04 21:43:23 +05:30
Vasanth T 37f3cc17a5 feat: advance Go-first TUI and npm wrapper (#57)
* feat: advance Go-first TUI and npm wrapper

* fix: address wrapper and footer review feedback

* feat: deepen Go TUI model and exec controls

* fix: address coderabbit exec and model list feedback
2026-06-04 20:59:06 +05:30
Vasanth T 95700c0898 feat: wire Go CLI to real provider flow (#54)
* feat: wire go cli to real provider flow

* fix: address exec review feedback

* test: harden exec provider assertions

* chore: prevent coderabbit blocking reviews
2026-06-04 19:45:21 +05:30
anandh8x e42a34fa83 Build release binary with Go 2026-06-04 19:33:57 +05:30
Vasanthdev2004 a222765a29 feat: unify go runtime provider contracts 2026-06-04 17:11:40 +05:30
Vasanthdev2004 b8e194d34d fix: reject empty exec prompts 2026-06-04 16:01:02 +05:30
Vasanthdev2004 9cb680318f feat: add go agent runtime 2026-06-04 16:01:02 +05:30
Vasanth T 711a5f970c [codex] add Go module entrypoint (#45)
* feat: add go module entrypoint

* fix: address go entrypoint review
2026-06-04 12:35:43 +05:30