Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
2266 commits
Select commit Hold shift + click to select a range
b36be90
Merge pull request 'Fix adf-fleet#34: ROC v1 Step F - verdict polling…
AlexMikhalev Apr 21, 2026
7a2cc45
[agent] feat(tracker): GiteaTracker::merge_pull + GiteaMergeResult — …
AlexMikhalev Apr 21, 2026
380763e
[agent] feat(orchestrator): AutoMergeExecutor trait + GiteaPrTracker …
AlexMikhalev Apr 21, 2026
041c75f
[agent] feat(orchestrator): handle_auto_merge (defensive re-check + P…
AlexMikhalev Apr 21, 2026
5777b2d
[agent] feat(orchestrator): wire AutoMerge arm in reconcile_tick to h…
AlexMikhalev Apr 21, 2026
1b16843
[agent] test(orchestrator): auto_merge execution + dedupe + failure-p…
AlexMikhalev Apr 21, 2026
680a93a
Merge pull request 'Fix #35: AutoMerge handler (ROC v1 Step G)' (#719…
AlexMikhalev Apr 21, 2026
829f94c
[agent] feat(orchestrator): post_merge_gate module + CommandRunner tr…
AlexMikhalev Apr 21, 2026
524efc0
feat(orchestrator): wire handle_post_merge_test_gate in reconcile_tic…
AlexMikhalev Apr 21, 2026
1669c3f
Merge pull request 'Fix #36: post-merge test gate (ROC v1 Step H)' (#…
AlexMikhalev Apr 21, 2026
7f517f7
[agent] feat(orchestrator): 4 Quickwit event variants for auto-review…
AlexMikhalev Apr 21, 2026
d34245f
Merge pull request 'Fix #37: Quickwit event tags for auto-review/merg…
AlexMikhalev Apr 21, 2026
6797e65
[agent] docs(adf-setup): cron cadence policy (metas */30, devs */20, …
AlexMikhalev Apr 21, 2026
ada1f44
Merge pull request 'Fix #39: cron cadence doc + developer-tier */20 b…
AlexMikhalev Apr 21, 2026
fd7de5f
[agent] docs(runbooks): ROC v1 staged rollout -- digital-twins -> odi…
AlexMikhalev Apr 21, 2026
5c94041
Merge pull request 'Fix #40: ROC v1 rollout runbook (ROC v1 Step L)' …
AlexMikhalev Apr 21, 2026
177a52f
feat(orchestrator): bump kimi-for-coding registration to k2p6
AlexMikhalev Apr 21, 2026
2384688
Merge pull request 'feat(orchestrator): bump kimi-for-coding registra…
AlexMikhalev Apr 21, 2026
5fd1624
fix(security): resolve RUSTSEC-2026-0098/0099, replace rand with fast…
Apr 21, 2026
2528274
docs: add handover for 2026-04-20 security fixes session Refs #630
Apr 21, 2026
aebf67c
chore: bump version to 1.16.35 for release
Apr 21, 2026
ac6a010
feat(cli): add evaluate subcommand for automata ground-truth evaluati…
Apr 21, 2026
51b1c49
fix(terraphim_agent): utf-8 safe snippet truncation (#824)
Apr 21, 2026
5a232b3
fix(ci): pass --features zlob in pre-build step too
Apr 21, 2026
2ff334e
feat(orchestrator): restore openai to C1 allow-list + KG routing
AlexMikhalev Apr 21, 2026
f8059d1
Merge pull request 'feat(orchestrator): restore openai to C1 allow-li…
AlexMikhalev Apr 21, 2026
2e205b3
feat(sessions): implement ClineConnector for VS Code extension sessions
Apr 21, 2026
f23338e
feat(agent): implement LearningInjector and learn inject CLI command
Apr 21, 2026
fb70ec5
feat(agent): migrate SharedLearningStore to markdown backend
Apr 21, 2026
b0f5253
fix(agent): harden shared learning startup hydration
Apr 21, 2026
4f57859
feat(kg): implement Steps 7-8 - knowledge graph integration and feedb…
Apr 21, 2026
9f88c5a
fix(kg): tighten learning query and feedback handling
Apr 21, 2026
68c80ef
fix(tracker): resolve PR-comment issue_number via pull_request_url fa…
AlexMikhalev Apr 21, 2026
224bc11
feat(agent): auto-route on search when --role is unset Refs #613
Apr 21, 2026
985a2b6
Merge pull request 'fix(tracker): resolve PR-comment issue_number via…
AlexMikhalev Apr 21, 2026
a566a9c
[agent] feat(orchestrator): thread project_id through dispatch, spawn…
Apr 21, 2026
9bea578
fix(auto-route): score against thesaurus to fix cold-start zero scori…
Apr 21, 2026
9a097b9
docs(adf): model selection and agent spawn reference
AlexMikhalev Apr 21, 2026
26b28c4
Merge pull request 'docs(adf): model selection and agent spawn refere…
AlexMikhalev Apr 21, 2026
8b8b404
fix(ci): restore rustfmt and clippy checks in PR workflow
Apr 21, 2026
541e9a3
chore: sync Cargo.lock version bumps
Apr 21, 2026
cb12663
feat(orchestrator): inject per-agent GITEA_TOKEN into spawn env
AlexMikhalev Apr 21, 2026
a991a2e
Merge pull request 'feat(orchestrator): inject per-agent GITEA_TOKEN …
AlexMikhalev Apr 21, 2026
9e8c61e
fix(orchestrator,service): remove duplicate functions and stale re-ex…
Apr 21, 2026
359eba7
docs(adf): per-agent token injection + meta-coordinator dispatch role
AlexMikhalev Apr 21, 2026
cf66701
Merge pull request 'docs(adf): per-agent token injection + meta-coord…
AlexMikhalev Apr 21, 2026
3e66760
Merge pull request 'Full sync: GitHub main -> Gitea main (all 67 comm…
AlexMikhalev Apr 21, 2026
7974e43
fix(security): resolve RUSTSEC-2026-0098/0099/0097, remove dead deps
AlexMikhalev Apr 21, 2026
d8bb242
fix: resolve build errors after security fix cherry-pick
AlexMikhalev Apr 21, 2026
7c3b6e1
fix(types): remove redundant ..Default::default() in test structs
AlexMikhalev Apr 21, 2026
39f7954
chore(release): bump version to 1.16.37
AlexMikhalev Apr 21, 2026
aefd910
chore(docker)(deps): bump rust in /docker (#830)
dependabot[bot] Apr 22, 2026
3f9f5d2
Fix #756: Session enrichment pipeline with concept extraction (#829)
AlexMikhalev Apr 22, 2026
e4fcf8c
feat(sessions): BM25-ranked session search with search-index feature …
AlexMikhalev Apr 22, 2026
516a53f
fix: add crates/terraphim_settings/default/ to .gitignore
Apr 22, 2026
38f3c8b
fix(settings): use absolute path for default config directory
Apr 22, 2026
046f245
feat(adf): normalize product-development and add repo-steward agent
Apr 22, 2026
ccc5f1d
feat(orchestrator): add mention-chain coordination for Gitea mentions…
AlexMikhalev Apr 22, 2026
37704f5
feat(learn): add suggestion approval workflow with batch operations R…
AlexMikhalev Apr 22, 2026
ca46777
fix(security): add RUSTSEC-2026-0104 to audit ignore list Refs #752
AlexMikhalev Apr 22, 2026
0f8f0f2
feat(agent): add token budget management engine for robot mode Refs #707
AlexMikhalev Apr 23, 2026
626bf3c
fix(orchestrator): harden provider probe circuit breaker and timeout …
Apr 23, 2026
8d6d1e0
Merge pull request 'Fix #791: harden provider probe circuit breaker a…
AlexMikhalev Apr 23, 2026
87a12dd
Merge pull request #836 from terraphim/task/707-token-budget-management
AlexMikhalev Apr 23, 2026
be5981f
fix(test): replace data-dependent assertion in test_api_client_search…
AlexMikhalev Apr 23, 2026
7f9335e
fix(test): replace data-dependent assertion in test_api_client_search…
AlexMikhalev Apr 23, 2026
b667b80
feat(sessions): wire robot mode JSON output into session commands (#798)
AlexMikhalev Apr 23, 2026
62ad84f
feat(sessions): wire robot mode JSON output into session commands (#840)
AlexMikhalev Apr 23, 2026
1fc729b
fix(adf): convert merge-coordinator to cron-driven, remove trigger ca…
Apr 23, 2026
8bdf259
test(agent): Phase 1 unit, property-based, and integration tests (#800)
AlexMikhalev Apr 23, 2026
d8f0cba
test(agent): Phase 1 unit, property-based, and integration tests Refs…
AlexMikhalev Apr 23, 2026
b5c9f53
Merge remote-tracking branch 'github/main'
Apr 23, 2026
b5658c2
feat(agent): wire RobotFormatter into CLI search and ForgivingParser …
AlexMikhalev Apr 23, 2026
f324936
chore: refresh Cargo.lock dependency versions
AlexMikhalev Apr 23, 2026
0ba2ad4
chore(ci): remove unused warden workflow
AlexMikhalev Apr 23, 2026
5f9be32
fix(test): update t9 robot mode assertions to match RobotResponse schema
AlexMikhalev Apr 23, 2026
fd6cc62
feat(sessions): implement SessionConnector::watch() for real-time ses…
AlexMikhalev Apr 23, 2026
920c069
feat(codebase-eval): add manifest types and TOML/YAML loader Refs #68…
AlexMikhalev Apr 23, 2026
9a42f63
fix(test): remove recursive cargo invocations from extract validation…
AlexMikhalev Apr 23, 2026
637fe04
fix: add missing KG file, grepapp feature, and fix flaky ZAI test
Apr 23, 2026
1913e6e
fix(test): remove recursive cargo invocations from extract validation…
AlexMikhalev Apr 23, 2026
fd4244e
docs: switch walkthrough and config to terraphim-graph hybrid scoring
Apr 23, 2026
403a60e
docs: add MCP integration section for opencode and Terraphim AI
Apr 23, 2026
71eabca
feat(types): add LearningStore trait and L0 trust level (#846)
AlexMikhalev Apr 23, 2026
4d5dcc1
feat(infrastructure): add fcctl-web for Firecracker CI acceleration
Apr 23, 2026
e6f126f
chore(infra): remove fcctl-web stub, exclude from workspace
Apr 23, 2026
b534fbf
feat(ci): add Firecracker-accelerated CI workflow
Apr 23, 2026
357062a
docs(infra): align rust-build.json with actual fcctl-web API contract
Apr 23, 2026
a45e5e3
docs: update Firecracker CI design doc to reflect bigbox reality
Apr 23, 2026
fedabb2
fix(ci-firecracker): fix workflow to prove VM infrastructure end-to-end
Apr 24, 2026
e33ba03
feat(ci-firecracker): fix zlob feature and add Earthly Rust VM image …
Apr 24, 2026
27d5535
feat(orchestrator): impl LearningStore on SharedLearningStore (#848)
AlexMikhalev Apr 24, 2026
ed36dcd
feat(orchestrator): wire learning store into agent lifecycle (#849)
AlexMikhalev Apr 24, 2026
293b75f
fix(ci-firecracker): unset CI env for cargo steps to bypass fff-searc…
Apr 24, 2026
30f8ae6
fix(ci-firecracker): handle fff-search/zlob cross-platform in CI
Apr 24, 2026
e09c40b
fix(ci-firecracker): restrict VM job to bigbox label, always unset CI…
Apr 24, 2026
da5e0d8
fix(ci-firecracker): skip test_chat_command which requires LLM API in CI
Apr 24, 2026
657ce47
fix(ci-firecracker): increase rust-build timeout to 45 minutes
Apr 24, 2026
575a075
feat(ci): shared rust build cache via sccache + SeaweedFS S3 on fcbr0
Apr 24, 2026
243ee65
fix(workspace): exclude infrastructure/rust-cache-stack from cargo wo…
Apr 24, 2026
71db7d7
fix(ci-firecracker): pin rust-build job to bigbox runner
Apr 24, 2026
45a1c27
fix(ci-firecracker): set CARGO_INCREMENTAL=0 and skip pre-existing flake
Apr 24, 2026
7eb2309
feat(agent): impl LearningStore on SharedLearningStore with graph hyb…
AlexMikhalev Apr 24, 2026
8762b12
fix(routing): add kimi and zai fallback routes to review_tier Refs #328
Apr 24, 2026
df0d3d4
feat(infra): firecracker rust-ci VM image with sccache + SeaweedFS
Apr 24, 2026
f14bb78
feat(ci): vm-cargo-probe job + Hetzner DNS fix + fcctl-bridge service
Apr 24, 2026
015ad2b
fix(agent): parse_chained_command identifies failing subcommand via e…
Apr 24, 2026
ca82feb
feat(build): zlob default with zig 0.16 + Darwin linker workaround
Apr 24, 2026
77c8445
fix(ci-firecracker): poll for ip_address + skip class of host-flaky t…
Apr 24, 2026
04d556f
fix: release config lock during I/O; fix robot search test contract
Apr 25, 2026
5ae2afc
ci: route vm-cargo-probe through /api/llm/execute; bump rust-build to…
Apr 25, 2026
aed2492
perf(tests): build agent/server once, exec binaries directly
Apr 25, 2026
c7960f7
fix(orchestrator): trust exit_code=0 over pattern matches in exit cla…
Apr 25, 2026
fb7209b
ci: fix vm-cargo-probe heredoc escaping for python parser
Apr 25, 2026
b010ad1
docs(adf): architecture reference and agent introduction documents
Apr 25, 2026
4b98570
ci: drop vm-cargo-probe; reserve Firecracker for sandbox per ADR
Apr 25, 2026
b92a955
ci: dispatch rust-build cargo invocations through rch exec
Apr 25, 2026
448efad
fix(routing): restore review_tier priority to 40 (below implementatio…
Apr 25, 2026
6b9e037
docs(adf): research + design for gap fixes; fix test expectations for…
Apr 25, 2026
973e52e
feat(adf): add runtime-guardian, upstream-synchronizer, meta-learning…
Apr 25, 2026
70b58ad
fix: scale rch canonical root via symlink to /home/alex/projects
Apr 25, 2026
a81a011
docs(adf): validation report for gap fixes -- CONDITIONAL_PASS
Apr 25, 2026
df7cc7c
feat(rlm): validate terraphim_rlm with real ecosystem - no mocks
Apr 25, 2026
e226382
feat(rlm): Enable real VM execution with SSH and network fixes
Apr 25, 2026
9fe0cae
ci(firecracker): retry execute step until guest sshd is reachable
Apr 25, 2026
0b480f6
docs(ci): walkthrough and how-to for the bigbox build pipeline
Apr 25, 2026
5184793
docs: Update validation report with real VM execution results
Apr 25, 2026
b92977e
feat(adf): restore product vision -- Themis persona + Compound-RICE s…
Apr 25, 2026
fece79d
ci: migrate ci-main ci-pr ci-native to bigbox + SeaweedFS + rch dispatch
Apr 25, 2026
2113579
docs(ci): mark legacy workflows as migrated to canonical stack
Apr 25, 2026
eacf01c
feat(adf): enhance product-owner with 5/25 + WIG alignment + mini-UAT
Apr 25, 2026
77c2681
fix(agent): suppress dead_code in budget module Refs #843
AlexMikhalev Apr 25, 2026
dba733e
fix(test): remove unsafe env::set_var in zai provider test Refs #822
AlexMikhalev Apr 25, 2026
bf4f79d
fix(test): replace sleep preamble with exponential backoff Refs #817
AlexMikhalev Apr 25, 2026
d9b2418
test(agent): revert MCP index latency threshold to 70ms Refs #907
AlexMikhalev Apr 25, 2026
1f60db2
docs(adf): update architecture + agent docs for full fleet (19 agents)
Apr 25, 2026
e6b4322
feat(adf): post Compound-RICE scoring as Gitea comment on top ready i…
Apr 25, 2026
470799f
docs: add verification and validation report for quickwin batch
AlexMikhalev Apr 25, 2026
1093084
docs: session handover 2026-04-25 ADF stabilisation + Themis + Mneme
Apr 25, 2026
c7edc4e
ci: kill stale sccache server before start to avoid v0.8/v0.14 mismatch
Apr 25, 2026
467864b
test(orchestrator): drop hardcoded persona count from registry test
Apr 25, 2026
11a81f3
fix(agent): parse_chained_command returns first subcommand for && chains
AlexMikhalev Apr 25, 2026
8191f63
ci: drop pkill; pin sccache server port to avoid v0.8/v0.14 collision
Apr 25, 2026
1a3b079
docs: add verification and validation reports for #906
AlexMikhalev Apr 25, 2026
3584b79
chore: add projects/odilo/ to .gitignore
AlexMikhalev Apr 25, 2026
2d2a06e
chore: add three-layer customer data protection
AlexMikhalev Apr 25, 2026
3f52e3d
test: trigger CI to verify permission fixes
AlexMikhalev Dec 2, 2025
1d456a0
test: verify workspace permission fixes
AlexMikhalev Dec 2, 2025
239c211
ci: trigger Tauri Build workflow test
AlexMikhalev Dec 3, 2025
fa557b6
refactor: remove unused petgraph dependency from agent crates (#390)
AlexMikhalev Dec 31, 2025
2de7683
feat: knowledge graph validation workflows for pre/post-LLM (#383)
AlexMikhalev Dec 31, 2025
7babedf
ci: trigger new workflow run
AlexMikhalev Dec 30, 2025
52401db
ci: trigger workflow after workspace cleanup
AlexMikhalev Dec 30, 2025
48cbade
chore: trigger CI run
AlexMikhalev Jan 30, 2026
22880bc
fix(multi-agent, tinyclaw, types): correctness fixes and security imp…
AlexMikhalev Feb 22, 2026
df36376
feat: agent-workflows E2E implementation (#652)
AlexMikhalev Mar 10, 2026
dd59b7f
chore: re-trigger CI
Apr 4, 2026
f0b3f84
ci: re-trigger CI (sccache transient failure)
AlexMikhalev Apr 14, 2026
07e4a2b
ci: re-trigger CI (sccache transient failure)
AlexMikhalev Apr 14, 2026
6b06671
[agent] feat(adf-setup): TOML transformation + project/agent/flow inj…
AlexMikhalev Apr 20, 2026
3abc1af
[agent] feat(adf-setup): banned-provider loud-fail validation - Refs …
AlexMikhalev Apr 20, 2026
8eac414
feat(codebase-eval): add manifest types and TOML/YAML loader Refs #68…
AlexMikhalev Apr 23, 2026
5076e1b
chore(deps): drop dead ring dep from terraphim_validation
Apr 25, 2026
c30a835
fix(deps): drop dead trust-dns-resolver to remove idna 0.4 RUSTSEC-20…
Apr 25, 2026
c931db3
chore: remove tracked projects/odilo/ customer data (protected by git…
AlexMikhalev Apr 25, 2026
e1bf9d6
fix(test): remove data-dependent assertion in test_api_client_search …
AlexMikhalev Apr 23, 2026
78147fb
feat(sessions): implement OpenCode and Codex JSONL session connectors…
AlexMikhalev Apr 23, 2026
b5c796b
feat(agent): add learn export-kg command and NormalizedTerm metadata …
AlexMikhalev Apr 25, 2026
bd0e832
fix: WalkDir depth limit and export-kg slug collision guard
AlexMikhalev Apr 25, 2026
48df9d6
docs: add V&V reports for cherry-picked PRs #841 #835 #834
AlexMikhalev Apr 25, 2026
6ca3186
fix(cli): graceful degradation for roles without KG Refs #920 #922
AlexMikhalev Apr 26, 2026
bf1ccf5
docs: fix CLI command references
Apr 26, 2026
4c9a7a4
docs: add documentation validation plan
Apr 26, 2026
10fa13e
fix(cli): listen --server exits with ERROR_USAGE (2) not 1 Refs #925
AlexMikhalev Apr 26, 2026
0dc9cc1
fix(repl): read selected role from service instead of hardcoded Defau…
AlexMikhalev Apr 26, 2026
c753140
docs: add V&V reports for bugs #923 and #925
AlexMikhalev Apr 26, 2026
d6bf18f
feat(agent): implement F1.2 exit-code contract with classify_error Re…
AlexMikhalev Apr 26, 2026
e2212c3
docs(spec): mark Tasks 1.4/1.5 complete after codebase verification R…
AlexMikhalev Apr 26, 2026
a1b2477
feat(tracker): add set_commit_status for Gitea status API
Apr 26, 2026
b496138
feat(orchestrator): post pending status on PR open
Apr 26, 2026
74f81fd
feat(adf): pr-reviewer posts status verdict
Apr 26, 2026
0587f5f
feat(orchestrator): add Push webhook variant + handle_push spawning b…
Apr 26, 2026
062aafb
feat(adf): build-runner agent template for Phase 3 push gate
Apr 26, 2026
9ea4462
feat(adf-ctl): add CLI binary for ADF orchestrator control
Apr 26, 2026
8880bda
feat(orchestrator): add PrDispatchConfig for PR fan-out (ADF Phase 2)
Apr 26, 2026
dc27434
feat(orchestrator): fan out PR open to build-runner + pr-reviewer (AD…
Apr 26, 2026
8ab6e3c
Merge Phase 2: PR fan-out wiring (build-runner + pr-reviewer on PR op…
Apr 26, 2026
25fd193
test(orchestrator): cover pr-spec-validator on PR open (ADF Phase 2b)
Apr 26, 2026
09942cb
feat(adf): pr-spec-validator agent template (Phase 2b)
Apr 26, 2026
81e13fb
fix(agent): robot search output contract regression Refs #905
AlexMikhalev Apr 26, 2026
6bb1179
feat(tracker): add set_commit_status for Gitea status API
Apr 26, 2026
22e4213
feat(orchestrator): post pending status on PR open
Apr 26, 2026
b62c223
feat(adf): pr-reviewer posts status verdict
Apr 26, 2026
5dcba7c
feat(orchestrator): add Push webhook variant + handle_push spawning b…
Apr 26, 2026
cee0a0e
feat(adf): build-runner agent template for Phase 3 push gate
Apr 26, 2026
b74ed1d
feat(adf-ctl): add CLI binary for ADF orchestrator control
Apr 26, 2026
b779d4a
feat(orchestrator): add PrDispatchConfig for PR fan-out (ADF Phase 2)
Apr 26, 2026
ba8a696
feat(orchestrator): fan out PR open to build-runner + pr-reviewer (AD…
Apr 26, 2026
f4798b3
docs(agent): add test ranking knowledge graph fixture
AlexMikhalev Apr 27, 2026
9296b00
fix(agent): robot search output contract regression Refs #905
AlexMikhalev Apr 26, 2026
91331d4
docs(agent): add test ranking knowledge graph fixture
AlexMikhalev Apr 27, 2026
908b77a
refactor(orchestrator): per-project pr_dispatch via IncludeFragment R…
Apr 27, 2026
f0cdfc0
release: bump version to 1.17.0 and update changelog
Apr 27, 2026
faf5e70
test: gate performance benchmarks behind cfg(not(debug_assertions)) R…
Apr 27, 2026
e870df7
chore: trigger PR fan-out (Refs #962)
Apr 27, 2026
0ba1420
docs(orchestrator): research + design for spawner task-body fix Refs …
Apr 27, 2026
dd4f2e1
fix(orchestrator): spawn agents with TOML task body, not runtime task…
Apr 27, 2026
0e8716a
test(agent): merge exit code tests from task/860 branch (PR #869)
AlexMikhalev Apr 27, 2026
6db4a6b
Merge remote-tracking branch 'origin/main'
AlexMikhalev Apr 27, 2026
f1163fc
fix(tests): resolve duplicate test functions after origin merge
AlexMikhalev Apr 27, 2026
8ca9aec
Merge pull request 'fix(orchestrator): spawn agents with TOML task bo…
AlexMikhalev Apr 27, 2026
a691169
Merge pull request 'sync: reconcile origin/main to gitea/main (v2)' (…
AlexMikhalev Apr 27, 2026
ca342d3
docs(orchestrator): research + design for spawner task-body fix Refs …
Apr 27, 2026
52beb86
fix(orchestrator): spawn agents with TOML task body, not runtime task…
Apr 27, 2026
2572686
docs: add dual-remote sync protocol and reconciliation docs
AlexMikhalev Apr 27, 2026
d466d63
Merge remote-tracking branch 'origin/main'
AlexMikhalev Apr 27, 2026
db939b5
Merge pull request 'feat(adf): Phase 2b — pr-spec-validator on PR ope…
AlexMikhalev Apr 27, 2026
d3d1dd6
Merge pull request 'docs: add dual-remote sync protocol to AGENTS.md …
AlexMikhalev Apr 27, 2026
5b64385
feat(adf): add pr-test-guardian agent template (Phase 2e)
Apr 26, 2026
6b9d201
test(orchestrator): cover pr-test-guardian PR fan-out (Phase 2e) Refs…
Apr 27, 2026
31ef711
Merge pull request 'feat(adf): Phase 2e — pr-test-guardian on PR open…
AlexMikhalev Apr 27, 2026
b43ad6e
docs: add Phase 4 verification and Phase 5 validation reports
AlexMikhalev Apr 27, 2026
7f8a7a2
Merge remote-tracking branch 'gitea/main'
AlexMikhalev Apr 27, 2026
7491a5a
Merge pull request 'docs: Phase 4 verification + Phase 5 validation r…
AlexMikhalev Apr 27, 2026
dabc7e4
feat(adf): pr-compliance-watchdog agent template + tests (Phase 2d) R…
Apr 27, 2026
e9b9ba8
Merge pull request 'feat(adf): Phase 2d — pr-compliance-watchdog on P…
AlexMikhalev Apr 27, 2026
3660cce
Merge pull request 'refactor(adf): per-project pr_dispatch via Includ…
AlexMikhalev Apr 27, 2026
056e65f
feat(adf): pr-security-sentinel agent template (Phase 2c)
Apr 26, 2026
ef3870f
test(orchestrator): cover pr-security-sentinel on PR open (ADF Phase …
Apr 27, 2026
3e3ce04
feat(robot): add query and role fields to ResponseMeta Refs #1026
AlexMikhalev Apr 27, 2026
de6c541
Merge pull request 'feat(adf): Phase 2c — pr-security-sentinel on PR …
AlexMikhalev Apr 27, 2026
69f6e4b
Merge remote-tracking branch 'gitea/main'
AlexMikhalev Apr 27, 2026
4b5ef3c
Merge pull request 'feat(robot): add query and role fields to Respons…
AlexMikhalev Apr 27, 2026
b171add
docs: add Phase 4 verification and Phase 5 validation reports for #1026
AlexMikhalev Apr 27, 2026
c470034
Merge pull request 'docs: Phase 4 verification + Phase 5 validation r…
AlexMikhalev Apr 27, 2026
cd10835
feat: implement #1034 - msteams-sdk-test.mjs with comprehensive MS Te…
AlexMikhalev Apr 27, 2026
2e61125
feat(agent): integrate ForgivingParser into CLI command dispatch Refs…
AlexMikhalev Apr 28, 2026
4dde95c
feat(agent): wire robot CLI subcommand to expose Self-Documentation A…
AlexMikhalev Apr 28, 2026
bb166b0
docs: update CHANGELOG and generate documentation gap report
AlexMikhalev Apr 28, 2026
1bad203
feat: implement #1040 - fix spec gaps Refs #1040
AlexMikhalev Apr 28, 2026
f84a364
docs(adf): add operations guide and blog post for PR fan-out deployment
Apr 27, 2026
0541f2c
docs: update CHANGELOG and generate documentation gap report
AlexMikhalev Apr 28, 2026
df31643
feat(multi_agent): wire LLM pre/post hooks in agent command handlers …
AlexMikhalev Apr 28, 2026
4707542
docs: update CHANGELOG and generate documentation gap report
AlexMikhalev Apr 28, 2026
0a08171
fix(clippy): resolve warnings and fix PR dispatch test helpers
Apr 28, 2026
bd263aa
Merge pull request 'Fix #451: Wire LLM pre/post hooks in agent comman…
Apr 28, 2026
ac188b7
Merge pull request 'fix(clippy): resolve warnings and fix PR dispatch…
AlexMikhalev Apr 28, 2026
67654c0
fix(sessions): deduplicate SessionConnector::watch() emissions with d…
AlexMikhalev Apr 29, 2026
0ceff5c
fix(sessions): deduplicate SessionConnector::watch() emissions with d…
AlexMikhalev Apr 30, 2026
375db14
test(sessions): tighten dedup integration test bounds and add lower-b…
AlexMikhalev Apr 30, 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
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
File renamed without changes.
56 changes: 56 additions & 0 deletions .agents/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# Custom Agents

Create specialized agent workflows that coordinate multiple AI agents to tackle complex engineering tasks. Instead of a single agent trying to handle everything, you can orchestrate teams of focused specialists that work together.

## Getting Started

1. **Edit an existing agent**: Start with `my-custom-agent.ts` and modify it for your needs
2. **Test your agent**: Run `codebuff --agent your-agent-name`
3. **Publish your agent**: Run `codebuff publish your-agent-name`

## Need Help?

- For detailed documentation, see [agent-guide.md](./agent-guide.md).
- For examples, check the `examples/` directory.
- Join our [Discord community](https://codebuff.com/discord) and ask your questions!

## Context Window Management

### Why Agent Workflows?

Modern software projects are complex ecosystems with thousands of files, multiple frameworks, intricate dependencies, and domain-specific requirements. A single AI agent trying to understand and modify such systems faces fundamental limitations—not just in knowledge, but in the sheer volume of information it can process at once.

### The Solution: Focused Context Windows

Agent workflows elegantly solve this by breaking large tasks into focused sub-problems. When working with large codebases (100k+ lines), each specialist agent receives only the narrow context it needs—a security agent sees only auth code, not UI components—keeping the context for each agent manageable while ensuring comprehensive coverage.

### Why Not Just Mimic Human Roles?

This is about efficient AI context management, not recreating a human department. Simply creating a "frontend-developer" agent misses the point. AI agents don't have human constraints like context-switching or meetings. Their power comes from hyper-specialization, allowing them to process a narrow domain more deeply than a human could, then coordinating seamlessly with other specialists.

## Agent workflows in action

Here's an example of a `git-committer` agent that creates good commit messages:

```typescript
export default {
id: 'git-committer',
displayName: 'Git Committer',
model: 'openai/gpt-5-nano',
toolNames: ['read_files', 'run_terminal_command', 'end_turn'],

instructionsPrompt:
'You create meaningful git commits by analyzing changes, reading relevant files for context, and crafting clear commit messages that explain the "why" behind changes.',

async *handleSteps() {
// Analyze what changed
yield { tool: 'run_terminal_command', command: 'git diff' }
yield { tool: 'run_terminal_command', command: 'git log --oneline -5' }

// Stage files and create commit with good message
yield 'STEP_ALL'
},
}
```

This agent systematically analyzes changes, reads relevant files for context, then creates commits with clear, meaningful messages that explain the "why" behind changes.
17 changes: 17 additions & 0 deletions .agents/examples/01-basic-diff-reviewer.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
import type { AgentDefinition } from '../types/agent-definition'

const definition: AgentDefinition = {
id: 'basic-diff-reviewer',
displayName: 'Basic Diff Reviewer',
model: 'anthropic/claude-4-sonnet-20250522',
toolNames: ['read_files', 'run_terminal_command'],

spawnerPrompt: 'Spawn when you need to review code changes in the git diff',

instructionsPrompt: `Execute the following steps:
1. Run git diff
2. Read the files that have changed
3. Review the changes and suggest improvements`,
}

export default definition
78 changes: 78 additions & 0 deletions .agents/examples/02-intermediate-git-committer.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,78 @@
import type {
AgentDefinition,
AgentStepContext,
ToolCall,
} from '../types/agent-definition'

const definition: AgentDefinition = {
id: 'git-committer',
displayName: 'Intermediate Git Committer',
model: 'anthropic/claude-4-sonnet-20250522',
toolNames: ['read_files', 'run_terminal_command', 'add_message', 'end_turn'],

inputSchema: {
prompt: {
type: 'string',
description: 'What changes to commit',
},
},

spawnerPrompt:
'Spawn when you need to commit code changes to git with an appropriate commit message',

systemPrompt:
'You are an expert software developer. Your job is to create a git commit with a really good commit message.',

instructionsPrompt:
'Follow the steps to create a good commit: analyze changes with git diff and git log, read relevant files for context, stage appropriate files, analyze changes, and create a commit with proper formatting.',

handleSteps: function* ({ agentState, prompt, params }: AgentStepContext) {
// Step 1: Run git diff and git log to analyze changes.
yield {
toolName: 'run_terminal_command',
input: {
command: 'git diff',
process_type: 'SYNC',
timeout_seconds: 30,
},
} satisfies ToolCall

yield {
toolName: 'run_terminal_command',
input: {
command: 'git log --oneline -10',
process_type: 'SYNC',
timeout_seconds: 30,
},
} satisfies ToolCall

// Step 2: Put words in AI's mouth so it will read files next.
yield {
toolName: 'add_message',
input: {
role: 'assistant',
content:
"I've analyzed the git diff and recent commit history. Now I'll read any relevant files to better understand the context of these changes.",
},
includeToolCall: false,
} satisfies ToolCall

// Step 3: Let AI generate a step to decide which files to read.
yield 'STEP'

// Step 4: Put words in AI's mouth to analyze the changes and create a commit.
yield {
toolName: 'add_message',
input: {
role: 'assistant',
content:
"Now I'll analyze the changes and create a commit with a good commit message.",
},
includeToolCall: false,
} satisfies ToolCall

yield 'STEP_ALL'
},
}

export default definition
73 changes: 73 additions & 0 deletions .agents/examples/03-advanced-file-explorer.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
import type { AgentDefinition, ToolCall } from '../types/agent-definition'

const definition: AgentDefinition = {
id: 'advanced-file-explorer',
displayName: 'Dora the File Explorer',
model: 'openai/gpt-5',

spawnerPrompt:
'Spawns multiple file picker agents in parallel to comprehensively explore the codebase from different perspectives',

includeMessageHistory: false,
toolNames: ['spawn_agents', 'set_output'],
spawnableAgents: [`codebuff/file-picker@0.0.1`],

inputSchema: {
prompt: {
description: 'What you need to accomplish by exploring the codebase',
type: 'string',
},
params: {
type: 'object',
properties: {
prompts: {
description:
'List of 1-4 different parts of the codebase that could be useful to explore',
type: 'array',
items: {
type: 'string',
},
},
},
required: ['prompts'],
additionalProperties: false,
},
},
outputMode: 'structured_output',
outputSchema: {
type: 'object',
properties: {
results: {
type: 'string',
description: 'The results of the file exploration',
},
},
required: ['results'],
additionalProperties: false,
},

handleSteps: function* ({ prompt, params }) {
const prompts: string[] = params?.prompts ?? []
const filePickerPrompts = prompts.map(
(focusPrompt) =>
`Based on the overall goal "${prompt}", find files related to this specific area: ${focusPrompt}`,
),
{ toolResult: spawnResult } = yield {
toolName: 'spawn_agents',
input: {
agents: filePickerPrompts.map((promptText) => ({
agent_type: 'codebuff/file-picker@0.0.1',
prompt: promptText,
})),
},
} satisfies ToolCall
yield {
toolName: 'set_output',
input: {
results: spawnResult,
},
} satisfies ToolCall
},
}

export default definition
43 changes: 43 additions & 0 deletions .agents/my-custom-agent.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
/*
* EDIT ME to create your own agent!
*
* Change any field below, and consult the AgentDefinition type for information on all fields and their purpose.
*
* Run your agent with:
* > codebuff --agent git-committer
*
* Or, run codebuff normally, and use the '@' menu to mention your agent, and codebuff will spawn it for you.
*
* Finally, you can publish your agent with 'codebuff publish your-custom-agent' so users from around the world can run it.
*/

import type { AgentDefinition } from './types/agent-definition'

const definition: AgentDefinition = {
id: 'my-custom-agent',
displayName: 'My Custom Agent',

model: 'anthropic/claude-4-sonnet-20250522',
spawnableAgents: ['file-explorer'],

// Check out .agents/types/tools.ts for more information on the tools you can include.
toolNames: ['run_terminal_command', 'read_files', 'spawn_agents'],

spawnerPrompt: 'Spawn when you need to review code changes in the git diff',

instructionsPrompt: `Review the code changes and suggest improvements.
Execute the following steps:
1. Run git diff
2. Spawn a file explorer to find all relevant files
3. Read any relevant files
4. Review the changes and suggest improvements`,

// Add more fields here to customize your agent further:
// - system prompt
// - input/output schema
// - handleSteps

// Check out the examples in .agents/examples for more ideas!
}

export default definition
Loading
Loading