Repository navigation
What's Changed
- KGL v0 + pytest plugin + Glama schema (review base) by @beardfaceguy in #1
- fix(index): guard against indexing over-broad roots (#47) by @beardfaceguy in #4
- feat(mcp): honor client-advertised roots to set the workspace (#46) by @beardfaceguy in #5
- feat(mcp): per-session verbosity dial skeleton (#181) by @beardfaceguy in #6
- feat(gh): raw passthrough + curated run/issue/pr-merge commands (#943) by @beardfaceguy in #7
- fix(gh): cap pr_diff output like raw (#944) by @beardfaceguy in #8
- feat(mcp): lever 3 — verbosity-parameterized tool descriptions (#936) by @beardfaceguy in #9
- feat(bench): daimonos-terse arm to measure prefix-diet levers (#945) by @beardfaceguy in #10
- fix(bench): pin smoke gate to BENCH_RUNS=1; document measured runtimes (#945) by @beardfaceguy in #11
- fix(cargo): surface
rebuiltso ok:true can't mask a stale no-op build (#946) by @beardfaceguy in #12 - feat(agent): load connection config from a required agent env file (#949) by @beardfaceguy in #14
- feat(agent): three-way approval prompt (Y=always/y=once/N) + persist Y (#950) by @beardfaceguy in #15
- feat(agent): AgentSession — stateful multi-turn session core (#956) by @beardfaceguy in #16
- feat(agent): daimonos chat interactive REPL (phase 2, #955) by @beardfaceguy in #17
- fix(chat): accept bare exit/quit and hint on idle Ctrl-C by @beardfaceguy in #18
- fix(agent): thread loaded CLI config into agent/chat tool sessions by @beardfaceguy in #19
- feat(agent): live token streaming for daimonos chat by @beardfaceguy in #20
- feat(agent): add --debug-tokens flag for per-call token usage logging by @beardfaceguy in #21
- feat(agent): daimonos acp — native ACP engine for Zed by @beardfaceguy in #22
- docs(zed-acp): add required "type": "custom" to agent_servers examples by @beardfaceguy in #23
- feat(acp): model picker + multi-session support for Zed agent panel by @beardfaceguy in #24
- feat(acp): session/load with cross-process persistence (native-provider parity) by @beardfaceguy in #25
- feat(chat): daimonos chat --resume + --list session persistence by @beardfaceguy in #26
- docs(adr): ADR-002 — context/window compaction design by @beardfaceguy in #27
- feat(providers): normalize token-usage accounting + classify context overflow by @beardfaceguy in #28
- feat(agent): context/window compaction (ADR-002) by @beardfaceguy in #29
- feat(agent): resolve context window from provider (#965) by @beardfaceguy in #30
- ci: enforce cargo fmt --check by @beardfaceguy in #31
- fix: codeJung findings from PR #31 review by @beardfaceguy in #32
- fix: guard explicit x07 index against empty-scan prune by @beardfaceguy in #33
- fix(plugins): floor UTF-8 truncation to char boundary; centralize $HOME by @beardfaceguy in #34
- benchmarks: runtime token comparison (daimonos-agent vs Claude CLI vs Cursor CLI) by @beardfaceguy in #35
- feat(prompts): externalize model-facing prompts (#974) by @beardfaceguy in #37
- feat(config): add --print-config-path flag (#979) by @beardfaceguy in #38
- feat(prompts): expose defaults and load user agent rules (#980) by @beardfaceguy in #39
- acp: render write_file/edit_file completions as Diff content by @beardfaceguy in #40
- acp: advertise tool-call locations for follow-the-agent by @beardfaceguy in #41
- acp: set raw_output on tool-call completion by @beardfaceguy in #42
- feat(acp): advertise slash commands by @beardfaceguy in #43
- feat(acp): expose saved sessions by @beardfaceguy in #44
- fix: keep graphify artifacts consistent by @beardfaceguy in #45
- feat: paginate ACP session history by @beardfaceguy in #46
- feat: support ACP embedded context and images by @beardfaceguy in #47
- ACP: stream exec output to Zed terminal cards by @beardfaceguy in #48
- ACP: stream and replay agent thinking by @beardfaceguy in #49
- fix: clear configuration backlog by @beardfaceguy in #50
- feat(acp): consume Zed-provided MCP servers (#990) by @beardfaceguy in #51
- feat(mcp): emit notifications/tools/list_changed on lazy exposure (#993) by @beardfaceguy in #52
- feat(mcp): bring socket roots and script handling to parity (#998) by @beardfaceguy in #53
- perf(acp): connect forwarded MCP servers concurrently (#1013) by @beardfaceguy in #54
- feat(agent): let process env override agent.env values (#1010) by @beardfaceguy in #55
- feat(tools): externalize parameter schema descriptions (#1007) by @beardfaceguy in #56
- perf(acp): pool identical MCP clients across sessions (#1008) by @beardfaceguy in #57
- feat(acp): emit native Plan updates for multi-step tasks (#992) by @beardfaceguy in #58
- feat(acp): add Zed retry and truncate extension (#1014) by @beardfaceguy in #59
- Fix ACP context usage reporting by @beardfaceguy in #60
- Fix ACP lifecycle and MCP discovery by @beardfaceguy in #61
- Add structured runtime diagnostics by @beardfaceguy in #62
- Separate runtime mode dispatch by @beardfaceguy in #63
- Fix ACP MCP CPU loop and secure logging by @beardfaceguy in #64
- Prevent ACP from bridging Daimonos MCP by @beardfaceguy in #65
- Define privacy-first LLM observability architecture by @beardfaceguy in #66
- Add fail-open OTLP observability foundation by @beardfaceguy in #67
- Distinguish ACP provider failures from refusals by @beardfaceguy in #68
- Trace agent prompt roots with session metadata by @beardfaceguy in #69
- Trace LLM generations with usage and latency by @beardfaceguy in #70
- Instrument native tools and forwarded MCP calls (#1039) by @beardfaceguy in #71
- Instrument compaction, retry, truncation, and cancellation (#1040) by @beardfaceguy in #72
- Validate Langfuse ingestion, privacy, overhead, and documentation (#1041) by @beardfaceguy in #73
- RLM harness research findings (#1044) by @beardfaceguy in #74
- Persist ACP sessions at session/new so blank threads resume (#1046) by @beardfaceguy in #75
- Add offload-then-summarize prompt guidance (#1047) by @beardfaceguy in #76
- ADR-007: context-offload handles for tool outputs (#1048) by @beardfaceguy in #77
- ADR-008: programmatic LLM sub-calls in execute_script (#1049) by @beardfaceguy in #78
- Dispatch execute_script in the internal agent loop (#1050 phase a) by @beardfaceguy in #79
- Emit execute_script child-op spans and parent batch_size (#1045) by @beardfaceguy in #80
- execute_script LLM sub-calls: llm_query / llm_query_batched (#1050 phase b) by @beardfaceguy in #81
- Move RLM harness research doc out of the repo into Vikunja by @beardfaceguy in #82
- feat(acp): fall back to Zed's config when it forwards no MCP servers by @beardfaceguy in #83
- Bump rust-mcp-sdk fork pin: fix stateless streamable-HTTP servers (Linear) by @beardfaceguy in #84
- Agent coordination (agent mail): ADR-009 + slice 1/4 (store + identity) by @beardfaceguy in #85
- Agent coordination (agent mail): slice 2/4 — messaging / inbox by @beardfaceguy in #86
- Agent coordination (agent mail): slice 3/4 — advisory file reservations by @beardfaceguy in #87
- ACP: log raw provider error behind the unclassified "Provider request failed" bucket by @beardfaceguy in #88
- Agent coordination (agent mail): slice 4/4 — observability spans + docs by @beardfaceguy in #89
- Agent mail: safe-boundary unread notifications by @beardfaceguy in #90
- ACP: retry transient stdio EAGAIN instead of exiting by @beardfaceguy in #92
- Native OpenAI Responses API provider by @beardfaceguy in #93
- fix(acp): classify provider 402 billing/credit errors (#1072) by @beardfaceguy in #94
- feat(acp): add persisted per-turn timestamps (#1070) by @beardfaceguy in #95
- Agent mail: render idle notice as visible ACP message by @beardfaceguy in #91
- fix(mcp): don't let the idle watchdog kill a request in flight (#1078) by @beardfaceguy in #96
- build: bound allocative below 0.3.6 so cargo install resolves (#1081) by @beardfaceguy in #97
- fix(acp): guard tool-call update lifecycles by @beardfaceguy in #98
- feat(session): define daemon client wire protocol by @beardfaceguy in #99
- docs: accept daemon-owned session architecture by @beardfaceguy in #100
- feat(session): add bounded client transport seam by @beardfaceguy in #101
- feat(session): add capability-aware approval broker by @beardfaceguy in #102
- fix(agent): repair orphaned tool calls on session load by @beardfaceguy in #103
- feat(acp): route permissions through session approval broker by @beardfaceguy in #104
- fix(openai): drop truncated tool calls by @beardfaceguy in #105
- feat(session): extract active-turn cancellation controller by @beardfaceguy in #106
- fix(script): align documented tool bindings by @beardfaceguy in #107
- fix(acp): stop child processes poisoning the JSON-RPC stdin fd by @beardfaceguy in #109
- fix(agent): dispatch plugin and meta tools in the agent loop by @beardfaceguy in #110
- feat(session): extract daemon-owned SessionCore and canonical events by @beardfaceguy in #108
- fix(session): claim turn outcome atomically; emit usage before the terminal event by @beardfaceguy in #111
- fix(session): canonical-stream fidelity - errored/lifecycle outcomes, prefix, retry-cancel cleanup (F1/F2/F3/F8) by @beardfaceguy in #112
- feat(mcp): hard-refuse self / nested-daimonos connection and dispatch (#1116) by @beardfaceguy in #113
- chore(benchmarks): consolidate to a single daimonos-agent-mode harness by @beardfaceguy in #114
- feat(agent): DAIMONOS_AGENT_THINKING reasoning-effort control (#1122) by @beardfaceguy in #115
- chore(benchmarks): add bench-cursor.sh cursor-agent runner by @beardfaceguy in #116
- refactor(benchmarks): port JS harness helpers to Python (#1126) by @beardfaceguy in #117
- feat(benchmarks): add bench-codex.sh (Codex CLI via OpenRouter) by @beardfaceguy in #118
- feat(edit): resilient search/replace matching + structured failures (#1127) by @beardfaceguy in #119
- Unify tool provisioning across MCP, agent, and ACP by @beardfaceguy in #120
- Eliminate routine agent harness retry turns by @beardfaceguy in #121
- Bound and compact agent-visible tool output by @beardfaceguy in #122
- Record final merged tool-output binary hash by @beardfaceguy in #123
- Measure native context composition and cache stable tools by @beardfaceguy in #124
- Add hybrid lazy path indexing by @beardfaceguy in #125
- Repair orphan tool calls after terminal provider responses by @beardfaceguy in #126
- test(mcp): daimonos_factory fixture + first config-gated provisioning test by @beardfaceguy in #128
- bench(#1209): index lifecycle benchmark for hybrid lazy indexing by @beardfaceguy in #127
- bench: record F3/F4 optimization lineage for the #122–#126 round (cache off/on) by @beardfaceguy in #130
- feat(tui): interactive terminal UI foundation — ADR-011 + reducer/render/approval/commands (#1091 phases 0,2-5) by @beardfaceguy in #131
- fix(prompts): stop telling the agent to use
batch(McpOnly, uncallable) by @beardfaceguy in #132 - fix(bench): repair vacuous/assertable correctness gates (tasks 07, 10, 11) by @beardfaceguy in #134
- fix(anthropic): clamp models-API max_input_tokens to the real serving window (#1228) by @beardfaceguy in #133
- fix(providers): stop the 8192 default output cap truncating reasoning turns ("Output Limit Reached") by @beardfaceguy in #137
- feat: large-output UX — diff-first policy, auto-continue-on-max_tokens, append_file (items 2–4) by @beardfaceguy in #140
- feat(config): load optional agent.env (dotenv-style) at startup for all modes by @beardfaceguy in #141
- feat(prompts): layer project-local agent-instructions.md over the global rule-set by @beardfaceguy in #142
- feat(#1197): deterministic tool retry-storm detection in the agent loop by @beardfaceguy in #143
- feat: add opt-in interactive agent TUI by @beardfaceguy in #139
- refactor: decouple agent sessions from ACP transport by @beardfaceguy in #144
- feat: add daemon-owned session lifecycle and local attach by @beardfaceguy in #145
- feat: add shared HeadlessFrontend contract by @beardfaceguy in #146
- feat: add bounded reconnect event replay by @beardfaceguy in #147
- fix: preserve session-ending event order by @beardfaceguy in #148
- feat: add secured remote session gateway by @beardfaceguy in #149
- feat: scaffold Android remote client by @beardfaceguy in #150
- feat: add paired Android controller MVP by @beardfaceguy in #151
- ci: build and publish Android debug APK by @beardfaceguy in #152
- fix: keep multiline TUI composer cursor visible by @beardfaceguy in #153
- execute_script batch adoption: instrumentation, Starlark recovery, and the #1129 Python spike by @beardfaceguy in #154
- Revert #1230 script-first tool restriction (unproven; benefit was largely measurement artifact) by @beardfaceguy in #155
- refactor(#1113): move ToolTier exposure decisions onto the type by @beardfaceguy in #156
- fix(#1284): stop listing agent-unreachable tools in list_all_tools by @beardfaceguy in #157
- docs(#1284): record that OnDemand is MCP-only by decision, not omission by @beardfaceguy in #158
- feat(#1230): measure batch adoption by ops-per-script, not script size by @beardfaceguy in #159
- feat(#1240): classify and retry transient provider failures by @beardfaceguy in #160
- feat(#1240): fail over to the next model when transient retries are exhausted by @beardfaceguy in #161
- feat(#1235): opt-in LLM reformatter for noisy verifier-tool output by @beardfaceguy in #162
- fix(#1236): make compaction summaries retain facts, and measure it by @beardfaceguy in #163
- fix(#1288): keep both ends of a tool result in the summarizer transcript by @beardfaceguy in #164
- feat(#1239): automatic per-turn workspace checkpoints via shadow git by @beardfaceguy in #165
- fix(#1107): bounded provider deadlines so a stalled stream cannot hang a turn by @beardfaceguy in #166
- fix(agent): drain queued analytics writes before the agent loop returns by @beardfaceguy in #167
- chore: replace the graphify knowledge graph with repowise by @beardfaceguy in #168
- fix(hooks): resync the repowise index on merge and checkout, not just commit by @beardfaceguy in #169
- feat(kgl): retain graphify as the KGL substrate only (ADR 012) by @beardfaceguy in #170
- docs(cursor): replace the graphify rule with a repowise one by @beardfaceguy in #171
- fix: actually gitignore the derived indexes, and correct AGENTS.md by @beardfaceguy in #172
- chore: track the portable agent config, ignore the per-machine parts by @beardfaceguy in #173
- feat(tui): make the panes proportional to the terminal by @beardfaceguy in #174
- feat(kgl): add a repowise-backed substrate (#1291) by @beardfaceguy in #175
- chore(kgl): stop auto-refreshing graphify; keep it as a manual fallback (ADR 013) by @beardfaceguy in #176
- fix(agent): make the max_tokens tests hermetic (#1292) by @beardfaceguy in #177
- fix(ops): stop inferring process exit from a file appearing (#1290) by @beardfaceguy in #178
- fix(acp): retire in-flight prompts when the ACP transport dies (#1107) by @beardfaceguy in #179
- fix: bound ACP bridge teardown (#1293) by @beardfaceguy in #181
- perf(prompt): teach read -> transform -> write to cut agent round-trips (#1230) by @beardfaceguy in #180
- feat: apply daemon runtime controls (#1281) by @beardfaceguy in #182
- fix: make reasoning telemetry provider-honest (#1300) by @beardfaceguy in #183
- feat: add private local thought capture (#1301) by @beardfaceguy in #184
- TUI resilience: vim scrolling, log-gate fix, transient-error resume, auto failover chain by @beardfaceguy in #185
- Discover the provider's live model catalog at startup by @beardfaceguy in #186
- Multi-provider sessions via a model-routing provider by @beardfaceguy in #187
- README: agent-harness feature summary from the harness market research by @beardfaceguy in #188
- README: bring Architecture and Project vision up to date by @beardfaceguy in #189
- Outbound MCP servers in agent/chat/TUI/daemon mode via a Claude-style mcpServers file (#1289) by @beardfaceguy in #190
- feat: add managed subprocess lifecycle by @beardfaceguy in #191
- feat(#1331): make the TUI a daemon-owned session client by @beardfaceguy in #192
- feat(#1331): make clear and usage daemon-authoritative by @beardfaceguy in #193
- feat(#1331): resume TUI sessions after connection loss by @beardfaceguy in #194
- feat(#1331): expose paused approval deadlines by @beardfaceguy in #195
- feat(#1331): make TUI input nonblocking by @beardfaceguy in #196
- feat(#1335): type daemon attach denials by @beardfaceguy in #197
- feat(#1333): switch TUI sessions atomically by @beardfaceguy in #198
- feat(#1339): serialize TUI switch admission by @beardfaceguy in #199
- feat(#1337): expose rich daemon session listings by @beardfaceguy in #200
- feat(#1336): bound daemon session discovery by @beardfaceguy in #201
- fix: preserve bounded snapshot truncation by @beardfaceguy in #202
- fix: classify session frame limit mismatches by @beardfaceguy in #203
- fix: validate canonical session snapshots by @beardfaceguy in #204
- fix: enforce the TUI capability contract by @beardfaceguy in #205
- feat: stabilize canonical TUI session hydration by @beardfaceguy in #206
- fix: add cursor editing to the TUI composer by @beardfaceguy in #207
- fix: type session store load failures by @beardfaceguy in #208
- fix: confirm session payload deletion before removal by @beardfaceguy in #209
- fix: order session persistence captures by @beardfaceguy in #210
- feat: bound persistence retries by @beardfaceguy in #211
- fix: protect unsaved sessions during lifecycle by @beardfaceguy in #212
- feat: make SQLite canonical session memory by @beardfaceguy in #213
- feat: add ordered durable session protocol v3 by @beardfaceguy in #214
- fix(#1418): classify mid-stream SSE transport breaks as retryable by @beardfaceguy in #215
- fix(#1424): capability-aware Shift+Enter with discoverable Ctrl-J fallback by @beardfaceguy in #216
- docs(#1421): preserve multi-provider model-picker prototype patch by @beardfaceguy in #217
- feat(#1457): make benchmark fixture reproducible by @beardfaceguy in #218
- fix(#1450): make SWE-bench setup reproducible by @beardfaceguy in #219
- fix(#1462): record OpenRouter generation costs by @beardfaceguy in #220
- fix(#1463): reject malformed tool-use responses by @beardfaceguy in #221
- docs(#1450): record restored SWE-bench repetitions by @beardfaceguy in #222
- docs(#1450): record restored harness comparison by @beardfaceguy in #223
- fix: use OpenRouter cost for mini comparison by @beardfaceguy in #224
- fix: preserve non-UTF8 SWE-bench patches by @beardfaceguy in #225
- bench: report three matched OpenRouter cost runs by @beardfaceguy in #226
- feat: cache Anthropic prompts through OpenRouter by @beardfaceguy in #227
- fix: retry settled OpenRouter benchmark calls by @beardfaceguy in #228
- bench: record OpenRouter cache parity by @beardfaceguy in #229
- bench: record OpenRouter full-50 comparison by @beardfaceguy in #230
- feat: retain per-instance SWE-bench tool traces by @beardfaceguy in #231
- fix: count Cursor model and tool calls by @beardfaceguy in #232
- bench: report traced SWE-bench outliers by @beardfaceguy in #233
- feat: add report-only SWE-bench guards by @beardfaceguy in #234
- fix: configure SWE-bench guardrails by @beardfaceguy in #235
- bench: record SWE-bench guard calibration by @beardfaceguy in #236
- fix(#1481): restore main build after MCP config merge by @beardfaceguy in #237
- Add outbound MCP OAuth grants by @beardfaceguy in #239
- feat: report observed completion evidence by @beardfaceguy in #240
- fix: stop installing removed Android SDK tools package by @beardfaceguy in #241
- fix: preserve cancelled-turn history and side-effect state by @beardfaceguy in #242
- fix: preserve optional OpenRouter tool parameters by @beardfaceguy in #243
- feat: add portable Agent Skills and ACP discovery by @beardfaceguy in #244
- fix: persist ACP model picker selection by @beardfaceguy in #245
- feat(#1527): honor thinking level on OpenRouter via reasoning param by @beardfaceguy in #246
- feat(#1523): ACP per-session reasoning-effort selector by @beardfaceguy in #247
- feat(#1538): git raw passthrough for every git subcommand by @beardfaceguy in #248
- ci(#1557): pin runners ahead of ubuntu-latest -> 26.04; bump actions past Node 20 by @beardfaceguy in #249
- fix(#1544): retire running commands when an MCP/ACP client disconnects or signals by @beardfaceguy in #250
- release: v0.1.5 by @beardfaceguy in #251
New Contributors
- @beardfaceguy made their first contribution in #1
Full Changelog: v0.1.4...v0.1.5