diff --git a/CHANGELOG.md b/CHANGELOG.md index 085c76f97..de27941ca 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,8 +4,15 @@ All notable changes to this project will be documented in this file. Dates are d Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). +#### [1.129.2](https://github.com/avoidwork/madz/compare/1.129.1...1.129.2) + +- fix: read Ollama context length from flat model_info keys [`#1622`](https://github.com/avoidwork/madz/pull/1622) + #### [1.129.1](https://github.com/avoidwork/madz/compare/1.129.0...1.129.1) +> 31 October 2026 + +- chore: release v1.129.1 [`#1620`](https://github.com/avoidwork/madz/pull/1620) - fix: sort skills alphabetically in the /skills panel [`#1619`](https://github.com/avoidwork/madz/pull/1619) - docs: add Getting Started configuration guide [`#1618`](https://github.com/avoidwork/madz/pull/1618) @@ -2541,925 +2548,10 @@ Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). - chore: update CHANGELOG.md with recent release entries [`#140`](https://github.com/avoidwork/madz/pull/140) - feat: add configurable recursion limit and graceful error handling [`#139`](https://github.com/avoidwork/madz/pull/139) -#### [1.0.0](https://github.com/avoidwork/madz/compare/v1.0.0...1.0.0) +#### 1.0.0 > 7 June 2026 -#### v1.0.0 - -> 24 October 2026 - -- feat: expand git tool with worktree, remote, rev-parse, ls-remote, fetch, describe + diff/log/tag modes [`#1524`](https://github.com/avoidwork/madz/pull/1524) -- docs: keep todo list accurate as work progresses [`#1522`](https://github.com/avoidwork/madz/pull/1522) -- feat: add pull action to git tool [`#1521`](https://github.com/avoidwork/madz/pull/1521) -- feat: add first-class git tool with guardrails [`#1520`](https://github.com/avoidwork/madz/pull/1520) -- chore: release v1.120.1 [`#1515`](https://github.com/avoidwork/madz/pull/1515) -- docs: collapse SYSTEM_PROMPT.md into 5 core categories [`#1514`](https://github.com/avoidwork/madz/pull/1514) -- chore: release v1.120.0 [`#1513`](https://github.com/avoidwork/madz/pull/1513) -- feat: add todo tool directive for multi-step work planning [`#1512`](https://github.com/avoidwork/madz/pull/1512) -- chore: release v1.119.3 [`#1510`](https://github.com/avoidwork/madz/pull/1510) -- fix: honor memory.checkpointsDir config key [`#1508`](https://github.com/avoidwork/madz/pull/1508) -- fix: clear scheduler timeout timer and abort sandbox on timeout [`#1509`](https://github.com/avoidwork/madz/pull/1509) -- chore: release v1.119.2 [`#1505`](https://github.com/avoidwork/madz/pull/1505) -- fix: don't render command picker empty message when filter has no matches [`#1504`](https://github.com/avoidwork/madz/pull/1504) -- chore: release v1.119.1 [`#1502`](https://github.com/avoidwork/madz/pull/1502) -- refactor: remove AGENTS.md from system prompt, fix memory tool path [`#1501`](https://github.com/avoidwork/madz/pull/1501) -- docs: apply AGENTS.md structure from upstream template [`#1499`](https://github.com/avoidwork/madz/pull/1499) -- fix: clear project indicator on /new session [`#1493`](https://github.com/avoidwork/madz/pull/1493) -- chore: update dependencies to latest versions [`#1473`](https://github.com/avoidwork/madz/pull/1473) -- chore: release v1.119.0 [`#1472`](https://github.com/avoidwork/madz/pull/1472) -- fix: serialize todo tool writes with a mutex and atomic rename [`#1471`](https://github.com/avoidwork/madz/pull/1471) -- feat: add todo tool as a task tracker [`#1470`](https://github.com/avoidwork/madz/pull/1470) -- chore: release v1.118.0 [`#1469`](https://github.com/avoidwork/madz/pull/1469) -- feat: add skill tool to load skill instructions [`#1468`](https://github.com/avoidwork/madz/pull/1468) -- docs: split README into focused reference docs [`#1466`](https://github.com/avoidwork/madz/pull/1466) -- chore: release v1.117.3 [`#1465`](https://github.com/avoidwork/madz/pull/1465) -- fix: don't render file picker empty message when filter has no matches [`#1464`](https://github.com/avoidwork/madz/pull/1464) -- revert: render file picker empty message below the input line [`#1462`](https://github.com/avoidwork/madz/pull/1462) -- fix: render file picker empty message below the input line [`#1461`](https://github.com/avoidwork/madz/pull/1461) -- chore: release v1.117.2 [`#1460`](https://github.com/avoidwork/madz/pull/1460) -- fix: make file-producing tools config-driven via memory/toolsDir [`#1459`](https://github.com/avoidwork/madz/pull/1459) -- chore: release v1.117.1 [`#1457`](https://github.com/avoidwork/madz/pull/1457) -- fix: clear message bubble streaming status when new segment arrives [`#1456`](https://github.com/avoidwork/madz/pull/1456) -- fix: wire live isStreaming signal to status bar spinner [`#1455`](https://github.com/avoidwork/madz/pull/1455) -- chore: release v1.117.0 [`#1452`](https://github.com/avoidwork/madz/pull/1452) -- fix: purge 37 config.yaml keys that no live code path reads [`#1451`](https://github.com/avoidwork/madz/pull/1451) -- feat: lower readImage default maxDimension to 3000px [`#1450`](https://github.com/avoidwork/madz/pull/1450) -- feat: surface 5 config keys read by code but absent from config.yaml [`#1449`](https://github.com/avoidwork/madz/pull/1449) -- chore: release v1.116.0 [`#1448`](https://github.com/avoidwork/madz/pull/1448) -- feat: re-anchor skill location on project switch [`#1447`](https://github.com/avoidwork/madz/pull/1447) -- chore(deps): bump js-yaml from 5.4.3 to 5.5.0 [`#1443`](https://github.com/avoidwork/madz/pull/1443) -- chore(deps): bump googleapis from 185.0.0 to 186.0.0 [`#1442`](https://github.com/avoidwork/madz/pull/1442) -- chore(deps): bump oxfmt from 0.72.0 to 0.73.0 [`#1438`](https://github.com/avoidwork/madz/pull/1438) -- chore(deps): bump puppeteer from 25.13.0 to 25.14.0 [`#1437`](https://github.com/avoidwork/madz/pull/1437) -- chore(deps): bump oxlint from 1.87.0 to 1.88.0 [`#1436`](https://github.com/avoidwork/madz/pull/1436) -- chore(deps): bump the langgraph group across 1 directory with 3 updates [`#1434`](https://github.com/avoidwork/madz/pull/1434) -- chore(deps): bump jsonpath-plus from 11.2.0 to 11.2.1 [`#1441`](https://github.com/avoidwork/madz/pull/1441) -- chore(deps): bump zod from 4.6.5 to 4.6.7 [`#1440`](https://github.com/avoidwork/madz/pull/1440) -- chore(deps): bump marked from 18.1.0 to 18.1.1 [`#1439`](https://github.com/avoidwork/madz/pull/1439) -- chore(deps): bump @opentelemetry/auto-instrumentations-node [`#1435`](https://github.com/avoidwork/madz/pull/1435) -- chore: release v1.115.0 [`#1433`](https://github.com/avoidwork/madz/pull/1433) -- feat: return readImage as image block, drop ImageDispatch/sendImage [`#1432`](https://github.com/avoidwork/madz/pull/1432) -- chore: release v1.114.0 [`#1431`](https://github.com/avoidwork/madz/pull/1431) -- fix: send Copilot-Vision-Request header on Copilot vision requests [`#1428`](https://github.com/avoidwork/madz/pull/1428) -- feat: make image.maxSize govern tool-result eviction ceiling [`#1430`](https://github.com/avoidwork/madz/pull/1430) -- chore: release v1.113.5 [`#1427`](https://github.com/avoidwork/madz/pull/1427) -- fix: resolve Copilot 403 rate-limit and 400 malformed-header errors [`#1425`](https://github.com/avoidwork/madz/pull/1425) -- chore: release v1.113.4 [`#1424`](https://github.com/avoidwork/madz/pull/1424) -- Revert "feat: add Copilot 403 retry middleware (#1422)" [`#1423`](https://github.com/avoidwork/madz/pull/1423) -- feat: add Copilot 403 retry middleware [`#1422`](https://github.com/avoidwork/madz/pull/1422) -- docs: add OpenSpec change for clarify interrupt flow [`#1421`](https://github.com/avoidwork/madz/pull/1421) -- fix: implement clarify interrupt flow so questions reach the user [`#1420`](https://github.com/avoidwork/madz/pull/1420) -- chore: release v1.113.3 [`#1418`](https://github.com/avoidwork/madz/pull/1418) -- fix: default roleless Copilot stream delta to assistant [`#1417`](https://github.com/avoidwork/madz/pull/1417) -- chore: release v1.113.2 [`#1416`](https://github.com/avoidwork/madz/pull/1416) -- fix: clarify tool does not echo question back to user [`#1415`](https://github.com/avoidwork/madz/pull/1415) -- chore(deps): bump jsonpath-plus from 11.1.1 to 11.2.0 [`#1409`](https://github.com/avoidwork/madz/pull/1409) -- chore(deps): bump nodemailer from 10.0.15 to 10.1.0 [`#1408`](https://github.com/avoidwork/madz/pull/1408) -- chore(deps): bump @photostructure/sqlite-vec from 2.0.1 to 2.1.1 [`#1406`](https://github.com/avoidwork/madz/pull/1406) -- chore(deps): bump clipboardy from 4.0.0 to 5.3.2 [`#1405`](https://github.com/avoidwork/madz/pull/1405) -- chore(deps): bump googleapis from 183.0.0 to 185.0.0 [`#1404`](https://github.com/avoidwork/madz/pull/1404) -- chore(deps): bump puppeteer from 25.12.0 to 25.13.0 [`#1403`](https://github.com/avoidwork/madz/pull/1403) -- chore(deps): bump the opentelemetry group with 2 updates [`#1401`](https://github.com/avoidwork/madz/pull/1401) -- chore(deps): bump cron-parser from 5.10.1 to 5.10.2 [`#1402`](https://github.com/avoidwork/madz/pull/1402) -- chore(deps): bump @langchain/langgraph [`#1400`](https://github.com/avoidwork/madz/pull/1400) -- chore: release v1.113.1 [`#1398`](https://github.com/avoidwork/madz/pull/1398) -- docs: add searchCode and directory-deletion guardrails to system prompt [`#1397`](https://github.com/avoidwork/madz/pull/1397) -- chore: release v1.113.0 [`#1396`](https://github.com/avoidwork/madz/pull/1396) -- feat: add dedicated subagent view to TUI [`#1371`](https://github.com/avoidwork/madz/pull/1371) -- chore: release v1.112.1 [`#1395`](https://github.com/avoidwork/madz/pull/1395) -- fix: restore shared config mutation for derived summarization trigger [`#1394`](https://github.com/avoidwork/madz/pull/1394) -- chore: release v1.112.0 [`#1393`](https://github.com/avoidwork/madz/pull/1393) -- fix: append space after file picker selection to prevent re-trigger [`#1392`](https://github.com/avoidwork/madz/pull/1392) -- feat: dedupe config loader logic [`#1390`](https://github.com/avoidwork/madz/pull/1390) -- feat: clean up agent module dead code and eager loading [`#1389`](https://github.com/avoidwork/madz/pull/1389) -- chore: release v1.111.2 [`#1375`](https://github.com/avoidwork/madz/pull/1375) -- fix: preserve conversation state and skip interrupt for view-switching commands [`#1374`](https://github.com/avoidwork/madz/pull/1374) -- chore: release v1.111.1 [`#1373`](https://github.com/avoidwork/madz/pull/1373) -- fix: append trailing space after skill selection in /skills panel [`#1372`](https://github.com/avoidwork/madz/pull/1372) -- chore: release v1.111.0 [`#1370`](https://github.com/avoidwork/madz/pull/1370) -- fix: remove broken Ctrl+E editor mode from TUI input [`#1369`](https://github.com/avoidwork/madz/pull/1369) -- feat: add TUI slash-command autocomplete and editor mode [`#1368`](https://github.com/avoidwork/madz/pull/1368) -- chore: release v1.110.0 [`#1367`](https://github.com/avoidwork/madz/pull/1367) -- feat: render context window meter as 10-cell block bar [`#1366`](https://github.com/avoidwork/madz/pull/1366) -- chore: release v1.109.0 [`#1365`](https://github.com/avoidwork/madz/pull/1365) -- docs: add Ctrl+F in-conversation search to help and docs [`#1364`](https://github.com/avoidwork/madz/pull/1364) -- feat: add context-window meter and in-conversation search to TUI [`#1363`](https://github.com/avoidwork/madz/pull/1363) -- chore: release v1.108.0 [`#1362`](https://github.com/avoidwork/madz/pull/1362) -- feat: add collapsible reasoning and tool-call blocks to TUI messages [`#1361`](https://github.com/avoidwork/madz/pull/1361) -- feat: collapse repeated tool calls in message bubble summary [`#1354`](https://github.com/avoidwork/madz/pull/1354) -- feat: improve status bar locale, spinner color, and project slicing [`#1341`](https://github.com/avoidwork/madz/pull/1341) -- chore: release v1.107.0 [`#1338`](https://github.com/avoidwork/madz/pull/1338) -- feat: add config-driven MCP server tool registration [`#1337`](https://github.com/avoidwork/madz/pull/1337) -- chore: release v1.106.0 [`#1335`](https://github.com/avoidwork/madz/pull/1335) -- feat: add configurable mouse scroll lines option [`#1334`](https://github.com/avoidwork/madz/pull/1334) -- chore: release v1.105.2 [`#1332`](https://github.com/avoidwork/madz/pull/1332) -- fix: throttle markdown re-parse during streaming [`#1331`](https://github.com/avoidwork/madz/pull/1331) -- chore: release v1.105.1 [`#1330`](https://github.com/avoidwork/madz/pull/1330) -- fix: enterprise GitHub Copilot LLM integration [`#1329`](https://github.com/avoidwork/madz/pull/1329) -- chore: release v1.105.0 [`#1327`](https://github.com/avoidwork/madz/pull/1327) -- feat: add virtualized scroll view to TUI conversation panel [`#1326`](https://github.com/avoidwork/madz/pull/1326) -- chore: release v1.104.0 [`#1323`](https://github.com/avoidwork/madz/pull/1323) -- fix: inject decisionConfig into decision tool at invoke time [`#1322`](https://github.com/avoidwork/madz/pull/1322) -- feat: add mouse selection with clipboard copy to TUI [`#1319`](https://github.com/avoidwork/madz/pull/1319) -- chore: release v1.103.0 [`#1320`](https://github.com/avoidwork/madz/pull/1320) -- feat: inject decision tool instruction into system prompt when enabled [`#1318`](https://github.com/avoidwork/madz/pull/1318) -- fix: exchange Copilot OAuth token for short-lived API bearer [`#1315`](https://github.com/avoidwork/madz/pull/1315) -- chore: release v1.102.0 [`#1313`](https://github.com/avoidwork/madz/pull/1313) -- feat: add mouse-wheel scrolling to conversation panel [`#1312`](https://github.com/avoidwork/madz/pull/1312) -- chore: release v1.101.0 [`#1311`](https://github.com/avoidwork/madz/pull/1311) -- feat: upgrade ink to v8 and replace scroll container [`#1309`](https://github.com/avoidwork/madz/pull/1309) -- chore: release v1.100.3 [`#1308`](https://github.com/avoidwork/madz/pull/1308) -- fix: unset TAVILY_API_KEY in test and coverage scripts [`#1307`](https://github.com/avoidwork/madz/pull/1307) -- fix: inject readImage result once and strip base64 from tool message [`#1306`](https://github.com/avoidwork/madz/pull/1306) -- chore: release v1.100.2 [`#1304`](https://github.com/avoidwork/madz/pull/1304) -- chore(deps): bump supports-hyperlinks from 4.5.0 to 4.6.0 [`#1302`](https://github.com/avoidwork/madz/pull/1302) -- chore(deps): bump oxlint from 1.85.0 to 1.86.0 [`#1301`](https://github.com/avoidwork/madz/pull/1301) -- chore(deps): bump tiny-lru from 13.0.1 to 13.1.0 [`#1300`](https://github.com/avoidwork/madz/pull/1300) -- chore(deps): bump ansi-regex from 6.3.0 to 6.4.0 [`#1299`](https://github.com/avoidwork/madz/pull/1299) -- chore(deps): bump pino from 10.3.1 to 10.4.0 [`#1298`](https://github.com/avoidwork/madz/pull/1298) -- chore(deps): bump oxfmt from 0.68.0 to 0.71.0 [`#1294`](https://github.com/avoidwork/madz/pull/1294) -- chore(deps): bump @langchain/openai [`#1293`](https://github.com/avoidwork/madz/pull/1293) -- chore: release v1.100.1 [`#1303`](https://github.com/avoidwork/madz/pull/1303) -- chore(deps): bump deepagents from 1.14.0 to 1.14.1 [`#1295`](https://github.com/avoidwork/madz/pull/1295) -- chore(deps): bump jsonpath-plus from 11.1.0 to 11.1.1 [`#1296`](https://github.com/avoidwork/madz/pull/1296) -- fix: copilot provider fails with missing credentials after device flow [`#1292`](https://github.com/avoidwork/madz/pull/1292) -- chore(deps): bump csv-generate from 4.6.1 to 4.6.2 [`#1297`](https://github.com/avoidwork/madz/pull/1297) -- chore: release v1.100.0 [`#1290`](https://github.com/avoidwork/madz/pull/1290) -- feat: add dot separators and SI postfix to status bar [`#1289`](https://github.com/avoidwork/madz/pull/1289) -- feat: re-add Exa as a search engine option [`#1286`](https://github.com/avoidwork/madz/pull/1286) -- feat: add Brave as a search engine option [`#1287`](https://github.com/avoidwork/madz/pull/1287) -- feat: re-add Firecrawl as a search engine option [`#1285`](https://github.com/avoidwork/madz/pull/1285) -- chore: release v1.99.0 [`#1284`](https://github.com/avoidwork/madz/pull/1284) -- fix: count tool tokens in live context window during streaming [`#1283`](https://github.com/avoidwork/madz/pull/1283) -- fix: count tool messages in live context window during streaming [`#1281`](https://github.com/avoidwork/madz/pull/1281) -- fix: reflect derived summarization trigger in settings view [`#1282`](https://github.com/avoidwork/madz/pull/1282) -- feat: re-add Tavily as a search engine option [`#1279`](https://github.com/avoidwork/madz/pull/1279) -- feat: derive summarization trigger from provider model context length [`#1278`](https://github.com/avoidwork/madz/pull/1278) -- fix: remove custom tiktoken tokenizer and use model tokenizer [`#1277`](https://github.com/avoidwork/madz/pull/1277) -- Revert "chore: release v1.99.0 (#1273)" [`#1274`](https://github.com/avoidwork/madz/pull/1274) -- chore: release v1.99.0 [`#1273`](https://github.com/avoidwork/madz/pull/1273) -- feat: estimate context cost from real checkpointer session [`#1267`](https://github.com/avoidwork/madz/pull/1267) -- docs: correct vector search architecture and indexing path [`#1265`](https://github.com/avoidwork/madz/pull/1265) -- chore: release v1.98.2 [`#1264`](https://github.com/avoidwork/madz/pull/1264) -- fix: select active provider by enabled flag for copilot device flow [`#1263`](https://github.com/avoidwork/madz/pull/1263) -- chore: release v1.98.1 [`#1261`](https://github.com/avoidwork/madz/pull/1261) -- fix: update settings view to cyan and preserve cursor position [`#1260`](https://github.com/avoidwork/madz/pull/1260) -- chore: release v1.98.0 [`#1259`](https://github.com/avoidwork/madz/pull/1259) -- feat: add enabled boolean to provider config and copilot block [`#1258`](https://github.com/avoidwork/madz/pull/1258) -- chore: release v1.97.0 [`#1256`](https://github.com/avoidwork/madz/pull/1256) -- feat: add GitHub Copilot provider with OAuth device flow [`#1254`](https://github.com/avoidwork/madz/pull/1254) -- fix: readImage size limit always uses config.image.maxSize [`#1255`](https://github.com/avoidwork/madz/pull/1255) -- chore: release v1.96.1 [`#1252`](https://github.com/avoidwork/madz/pull/1252) -- fix: handle litellm 400 context window exceeded by compacting and re-sending [`#1251`](https://github.com/avoidwork/madz/pull/1251) -- chore: release v1.96.0 [`#1249`](https://github.com/avoidwork/madz/pull/1249) -- fix: make /compact command work end-to-end [`#1248`](https://github.com/avoidwork/madz/pull/1248) -- feat: add /compact TUI slash command for manual context compaction [`#1247`](https://github.com/avoidwork/madz/pull/1247) -- chore: release v1.95.0 [`#1245`](https://github.com/avoidwork/madz/pull/1245) -- feat: add decision tool for structured classification via Ollama [`#1244`](https://github.com/avoidwork/madz/pull/1244) -- chore: release v1.94.0 [`#1242`](https://github.com/avoidwork/madz/pull/1242) -- feat: save screenshotWeb output to disk for readImage [`#1241`](https://github.com/avoidwork/madz/pull/1241) -- docs: correct README tool inventory and agent paths [`#1239`](https://github.com/avoidwork/madz/pull/1239) -- chore: release v1.93.0 [`#1238`](https://github.com/avoidwork/madz/pull/1238) -- feat: dispatch readImage results to LLM as vision input [`#1237`](https://github.com/avoidwork/madz/pull/1237) -- chore: release v1.92.2 [`#1235`](https://github.com/avoidwork/madz/pull/1235) -- fix: bind and log errors in silent catch blocks in logger [`#1234`](https://github.com/avoidwork/madz/pull/1234) -- Revert "fix: block SSRF hostnames and enforce exact-hostname allowlist matching (#1231)" [`#1233`](https://github.com/avoidwork/madz/pull/1233) -- fix: block SSRF hostnames and enforce exact-hostname allowlist matching [`#1231`](https://github.com/avoidwork/madz/pull/1231) -- fix: surface subagent prompt-load failure at warn level [`#1229`](https://github.com/avoidwork/madz/pull/1229) -- chore(deps): bump jsonpath-plus from 10.4.0 to 11.1.0 [`#1216`](https://github.com/avoidwork/madz/pull/1216) -- chore(deps): bump csv-stringify from 6.8.3 to 6.9.0 [`#1217`](https://github.com/avoidwork/madz/pull/1217) -- chore(deps): bump googleapis from 181.0.0 to 182.0.0 [`#1215`](https://github.com/avoidwork/madz/pull/1215) -- chore(deps): bump yargs from 18.1.0 to 18.2.0 [`#1214`](https://github.com/avoidwork/madz/pull/1214) -- chore(deps): bump oxlint from 1.83.0 to 1.85.0 [`#1213`](https://github.com/avoidwork/madz/pull/1213) -- chore(deps): bump puppeteer from 25.11.0 to 25.12.0 [`#1210`](https://github.com/avoidwork/madz/pull/1210) -- chore(deps): bump auto-changelog from 2.6.1 to 2.7.0 [`#1209`](https://github.com/avoidwork/madz/pull/1209) -- chore: release v1.92.1 [`#1223`](https://github.com/avoidwork/madz/pull/1223) -- fix: filter out git worktree directories from /projects view [`#1222`](https://github.com/avoidwork/madz/pull/1222) -- chore: release v1.92.0 [`#1220`](https://github.com/avoidwork/madz/pull/1220) -- fix: filter hidden directories from /projects view [`#1219`](https://github.com/avoidwork/madz/pull/1219) -- feat: show only skill names in the skills view [`#1218`](https://github.com/avoidwork/madz/pull/1218) -- chore(deps): bump marked from 18.0.13 to 18.0.14 [`#1211`](https://github.com/avoidwork/madz/pull/1211) -- chore(deps): bump csv-parse from 7.0.2 to 7.0.3 [`#1212`](https://github.com/avoidwork/madz/pull/1212) -- chore(deps): bump @langchain/langgraph in the langgraph group [`#1208`](https://github.com/avoidwork/madz/pull/1208) -- fix: allow file picker to activate on hyphenated @ tokens [`#1207`](https://github.com/avoidwork/madz/pull/1207) -- chore: release v1.91.1 [`#1206`](https://github.com/avoidwork/madz/pull/1206) -- fix: allow base64-encoded image size up to maxSize * 1.33 [`#1205`](https://github.com/avoidwork/madz/pull/1205) -- chore: release v1.91.0 [`#1204`](https://github.com/avoidwork/madz/pull/1204) -- feat: add /large_tool_results symlink to /tmp in Dockerfile [`#1203`](https://github.com/avoidwork/madz/pull/1203) -- chore: archive tui-file-path-autocomplete openspec change [`#1201`](https://github.com/avoidwork/madz/pull/1201) -- fix: enforce byte budget on screenshot resize [`#1200`](https://github.com/avoidwork/madz/pull/1200) -- chore: release v1.90.0 [`#1199`](https://github.com/avoidwork/madz/pull/1199) -- chore: update puppeteer-core and sharp to latest [`#1198`](https://github.com/avoidwork/madz/pull/1198) -- feat: add headless browser rendering and screenshot tools [`#1197`](https://github.com/avoidwork/madz/pull/1197) -- chore: release v1.89.0 [`#1195`](https://github.com/avoidwork/madz/pull/1195) -- feat: add explicit search engine config with configurable duckduckgo [`#1193`](https://github.com/avoidwork/madz/pull/1193) -- chore: release v1.88.4 [`#1191`](https://github.com/avoidwork/madz/pull/1191) -- fix: prevent duplicate checkbox rendering in task lists [`#1190`](https://github.com/avoidwork/madz/pull/1190) -- docs: audit and correct documentation accuracy and structure [`#1189`](https://github.com/avoidwork/madz/pull/1189) -- chore: release v1.88.3 [`#1188`](https://github.com/avoidwork/madz/pull/1188) -- fix: reposition project tag to end of left status bar group [`#1187`](https://github.com/avoidwork/madz/pull/1187) -- fix: gate file picker on word-boundary @ token [`#1186`](https://github.com/avoidwork/madz/pull/1186) -- fix: only trigger file picker on @ at word boundary [`#1185`](https://github.com/avoidwork/madz/pull/1185) -- chore: release v1.88.2 [`#1181`](https://github.com/avoidwork/madz/pull/1181) -- fix: send silent reset message on /projects clear command [`#1180`](https://github.com/avoidwork/madz/pull/1180) -- chore: release v1.88.1 [`#1179`](https://github.com/avoidwork/madz/pull/1179) -- fix: send silent project context message on /projects select and clear [`#1178`](https://github.com/avoidwork/madz/pull/1178) -- chore: release v1.88.0 [`#1177`](https://github.com/avoidwork/madz/pull/1177) -- feat: add @ file path autocomplete with active project support [`#1176`](https://github.com/avoidwork/madz/pull/1176) -- chore: release v1.87.3 [`#1175`](https://github.com/avoidwork/madz/pull/1175) -- refactor: use ink-select-input in skills panel [`#1174`](https://github.com/avoidwork/madz/pull/1174) -- chore: archive fix-max-tokens-minute-enforcement and systematic-test-coverage changes [`#1173`](https://github.com/avoidwork/madz/pull/1173) -- chore: remove stale restructure-tools-consistent-pattern change [`#1172`](https://github.com/avoidwork/madz/pull/1172) -- fix: anchor frontmatter extraction and use directory name as canonical skill id [`#1171`](https://github.com/avoidwork/madz/pull/1171) -- chore: release v1.87.2 [`#1169`](https://github.com/avoidwork/madz/pull/1169) -- fix: remove brain glyph from status bar model display [`#1168`](https://github.com/avoidwork/madz/pull/1168) -- chore: release v1.87.1 [`#1167`](https://github.com/avoidwork/madz/pull/1167) -- fix: render /sessions and /memory selection in cyan to match /skills [`#1166`](https://github.com/avoidwork/madz/pull/1166) -- chore: release v1.87.0 [`#1165`](https://github.com/avoidwork/madz/pull/1165) -- feat: add configurable status bar visibility [`#1164`](https://github.com/avoidwork/madz/pull/1164) -- fix: use crosshatch glyph for context window in status bar [`#1162`](https://github.com/avoidwork/madz/pull/1162) -- feat: display provider model name in status bar [`#1161`](https://github.com/avoidwork/madz/pull/1161) -- chore: release v1.86.0 [`#1159`](https://github.com/avoidwork/madz/pull/1159) -- feat: ellipsize long skill descriptions in skills view [`#1158`](https://github.com/avoidwork/madz/pull/1158) -- chore: release v1.85.2 [`#1156`](https://github.com/avoidwork/madz/pull/1156) -- fix: status bar context counter undercounts orchestrator context [`#1155`](https://github.com/avoidwork/madz/pull/1155) -- chore: release v1.85.1 [`#1153`](https://github.com/avoidwork/madz/pull/1153) -- fix: surface subagent tool capabilities to orchestrator [`#1152`](https://github.com/avoidwork/madz/pull/1152) -- chore: release v1.85.0 [`#1150`](https://github.com/avoidwork/madz/pull/1150) -- docs: add summarization config values and env var examples [`#1149`](https://github.com/avoidwork/madz/pull/1149) -- feat: configurable summarization thresholds for proactive compaction [`#1148`](https://github.com/avoidwork/madz/pull/1148) -- docs: fix AGENTS.md project layout, lint config name, and hook rules [`#1145`](https://github.com/avoidwork/madz/pull/1145) -- chore: enable husky pre-commit hook and gate coverage on test failures [`#1144`](https://github.com/avoidwork/madz/pull/1144) -- refactor: remove dead sandbox runtime and invokeSkill placeholder [`#1143`](https://github.com/avoidwork/madz/pull/1143) -- fix: correct architecture doc drift and three latent code defects [`#1142`](https://github.com/avoidwork/madz/pull/1142) -- chore: release v1.84.2 [`#1141`](https://github.com/avoidwork/madz/pull/1141) -- fix: enforce maxTokensMinute rolling token budget on dispatch [`#1140`](https://github.com/avoidwork/madz/pull/1140) -- chore: release v1.84.1 [`#1138`](https://github.com/avoidwork/madz/pull/1138) -- chore: gitignore projects dir and mkdir in Dockerfile [`#1137`](https://github.com/avoidwork/madz/pull/1137) -- docs: rewrite TUTORIAL.md for accuracy and onboarding [`#1136`](https://github.com/avoidwork/madz/pull/1136) -- chore(deps): bump deepagents from 1.13.4 to 1.14.0 [`#1134`](https://github.com/avoidwork/madz/pull/1134) -- chore(deps): bump the langgraph group with 2 updates [`#1133`](https://github.com/avoidwork/madz/pull/1133) -- chore: release v1.84.0 [`#1132`](https://github.com/avoidwork/madz/pull/1132) -- feat: add configurable tokens-per-minute rate limiting [`#1131`](https://github.com/avoidwork/madz/pull/1131) -- docs: rewrite README with security-first positioning [`#1129`](https://github.com/avoidwork/madz/pull/1129) -- chore: release v1.83.0 [`#1128`](https://github.com/avoidwork/madz/pull/1128) -- feat: add terraform and tflint to Docker container [`#1127`](https://github.com/avoidwork/madz/pull/1127) -- chore: release v1.82.4 [`#1126`](https://github.com/avoidwork/madz/pull/1126) -- fix: redirect image tasks to readImage in tool description [`#1125`](https://github.com/avoidwork/madz/pull/1125) -- docs: redirect image tasks to readImage tool [`#1124`](https://github.com/avoidwork/madz/pull/1124) -- chore: release v1.82.3 [`#1122`](https://github.com/avoidwork/madz/pull/1122) -- fix: persist interrupted assistant bubble with reasoning content [`#1120`](https://github.com/avoidwork/madz/pull/1120) -- chore: release v1.82.2 [`#1118`](https://github.com/avoidwork/madz/pull/1118) -- fix: auto-continue when assistant completes with reasoning only [`#1117`](https://github.com/avoidwork/madz/pull/1117) -- Delete CLAUDE.md [`#1115`](https://github.com/avoidwork/madz/pull/1115) -- chore: release v1.82.1 [`#1114`](https://github.com/avoidwork/madz/pull/1114) -- fix: route TUI skill slash-command through deepagents skill system [`#1112`](https://github.com/avoidwork/madz/pull/1112) -- chore: archive remove-unicode-prefix-reasoning change [`#1113`](https://github.com/avoidwork/madz/pull/1113) -- fix: remove unicode prefix from reasoning responses [`#1111`](https://github.com/avoidwork/madz/pull/1111) -- chore: release v1.82.0 [`#1109`](https://github.com/avoidwork/madz/pull/1109) -- feat: add rotating quotes to status bar [`#1108`](https://github.com/avoidwork/madz/pull/1108) -- chore: release v1.81.3 [`#1105`](https://github.com/avoidwork/madz/pull/1105) -- fix: remove ellipsis truncation from skill descriptions [`#1104`](https://github.com/avoidwork/madz/pull/1104) -- chore: remove audit tools from Dockerfile [`#1103`](https://github.com/avoidwork/madz/pull/1103) -- chore: release v1.81.2 [`#1102`](https://github.com/avoidwork/madz/pull/1102) -- chore: fix Dockerfile ownership and tool install paths [`#1101`](https://github.com/avoidwork/madz/pull/1101) -- chore: release v1.81.1 [`#1099`](https://github.com/avoidwork/madz/pull/1099) -- chore: slim docker image by removing caches and unused vault [`#1098`](https://github.com/avoidwork/madz/pull/1098) -- chore: release v1.81.0 [`#1097`](https://github.com/avoidwork/madz/pull/1097) -- feat: display version in status bar [`#1096`](https://github.com/avoidwork/madz/pull/1096) -- chore: release v1.80.1 [`#1094`](https://github.com/avoidwork/madz/pull/1094) -- fix: unescape colons in markdown terminal renderer [`#1093`](https://github.com/avoidwork/madz/pull/1093) -- feat: expose readImage to orchestrator and remove redundant prompt capabilities [`#1092`](https://github.com/avoidwork/madz/pull/1092) -- chore: release v1.80.0 [`#1091`](https://github.com/avoidwork/madz/pull/1091) -- feat: add readImage tool for reading images from disk as base64 [`#1090`](https://github.com/avoidwork/madz/pull/1090) -- chore: release v1.79.0 [`#1088`](https://github.com/avoidwork/madz/pull/1088) -- feat: sync /help with banner via shared command help [`#1087`](https://github.com/avoidwork/madz/pull/1087) -- chore: release v1.78.0 [`#1086`](https://github.com/avoidwork/madz/pull/1086) -- feat: implement TUI view routing system with panel navigation [`#1035`](https://github.com/avoidwork/madz/pull/1035) -- chore: release v1.77.2 [`#1085`](https://github.com/avoidwork/madz/pull/1085) -- fix: strip inline formatting markers inside list items [`#1084`](https://github.com/avoidwork/madz/pull/1084) -- chore: release v1.77.1 [`#1083`](https://github.com/avoidwork/madz/pull/1083) -- fix: restore auto-scroll with bounded scroll viewport [`#1082`](https://github.com/avoidwork/madz/pull/1082) -- chore: update dependencies to latest versions [`#1081`](https://github.com/avoidwork/madz/pull/1081) -- chore: release v1.77.0 [`#1080`](https://github.com/avoidwork/madz/pull/1080) -- feat: run indexCode indexing in a piscina worker pool [`#1079`](https://github.com/avoidwork/madz/pull/1079) -- chore: release v1.76.1 [`#1077`](https://github.com/avoidwork/madz/pull/1077) -- chore: remove madz project from vector config [`#1076`](https://github.com/avoidwork/madz/pull/1076) -- chore(deps): bump marked from 18.0.11 to 18.0.12 [`#1070`](https://github.com/avoidwork/madz/pull/1070) -- chore(deps): bump deepagents from 1.13.3 to 1.13.4 [`#1069`](https://github.com/avoidwork/madz/pull/1069) -- chore(deps): bump the langgraph group with 2 updates [`#1066`](https://github.com/avoidwork/madz/pull/1066) -- chore(deps): bump auto-changelog from 2.6.0 to 2.6.1 [`#1067`](https://github.com/avoidwork/madz/pull/1067) -- docs: add threat model [`#1065`](https://github.com/avoidwork/madz/pull/1065) -- chore: release v1.76.0 [`#1064`](https://github.com/avoidwork/madz/pull/1064) -- feat: add yarn, pnpm, and openspec to docker container [`#1063`](https://github.com/avoidwork/madz/pull/1063) -- fix: serialize cron job input into derived skill command [`#1061`](https://github.com/avoidwork/madz/pull/1061) -- chore: release v1.75.3 [`#1058`](https://github.com/avoidwork/madz/pull/1058) -- fix: derive cron command from skill name [`#1057`](https://github.com/avoidwork/madz/pull/1057) -- docs: document type- and grammar-based segment coalescing in STREAMING.md [`#1055`](https://github.com/avoidwork/madz/pull/1055) -- chore: release v1.75.2 [`#1054`](https://github.com/avoidwork/madz/pull/1054) -- fix: coalesce reasoning segments by grammatical sentence boundary [`#1053`](https://github.com/avoidwork/madz/pull/1053) -- refactor: rename namecom tool directory to dns [`#1052`](https://github.com/avoidwork/madz/pull/1052) -- docs: complete streaming desired behavior table [`#1048`](https://github.com/avoidwork/madz/pull/1048) -- docs: add streaming message coalescing behavior tables [`#1047`](https://github.com/avoidwork/madz/pull/1047) -- fix: remove special-case handling of lone '.' in message rendering [`#1046`](https://github.com/avoidwork/madz/pull/1046) -- chore: release v1.75.1 [`#1044`](https://github.com/avoidwork/madz/pull/1044) -- chore: remove compactContext, moa, and vision tools [`#1043`](https://github.com/avoidwork/madz/pull/1043) -- chore: release v1.75.0 [`#1042`](https://github.com/avoidwork/madz/pull/1042) -- feat: harden subagent prompts to pass audit threshold [`#1041`](https://github.com/avoidwork/madz/pull/1041) -- chore: release v1.74.2 [`#1038`](https://github.com/avoidwork/madz/pull/1038) -- refactor: rename tools to verb-noun naming convention [`#1037`](https://github.com/avoidwork/madz/pull/1037) -- chore: remove .worktrees gitignore entry [`#1036`](https://github.com/avoidwork/madz/pull/1036) -- chore: release v1.74.1 [`#1033`](https://github.com/avoidwork/madz/pull/1033) -- fix: add missing config import in memory tool [`#1032`](https://github.com/avoidwork/madz/pull/1032) -- fix: correct showToolResults default to false [`#1030`](https://github.com/avoidwork/madz/pull/1030) -- chore: release v1.74.0 [`#1029`](https://github.com/avoidwork/madz/pull/1029) -- feat: add config option to suppress toolCallDisplay in TUI (#1023) [`#1028`](https://github.com/avoidwork/madz/pull/1028) -- chore: release v1.73.0 [`#1027`](https://github.com/avoidwork/madz/pull/1027) -- feat: implement syncEnv() for env-var-driven config materialization [`#1026`](https://github.com/avoidwork/madz/pull/1026) -- chore: release v1.72.0 [`#1022`](https://github.com/avoidwork/madz/pull/1022) -- feat: add getConfig tool for harness config access [`#1021`](https://github.com/avoidwork/madz/pull/1021) -- chore: release v1.71.0 [`#1020`](https://github.com/avoidwork/madz/pull/1020) -- feat: add FTS5 full-text search with hybrid vector+keyword search [`#1019`](https://github.com/avoidwork/madz/pull/1019) -- chore: release v1.70.1 [`#1017`](https://github.com/avoidwork/madz/pull/1017) -- fix: create Debian log directory in Dockerfile [`#1016`](https://github.com/avoidwork/madz/pull/1016) -- chore: release v1.70.0 [`#1015`](https://github.com/avoidwork/madz/pull/1015) -- feat: migrate Docker base from Alpine to Debian slim and remove Rust source compilation stage [`#1014`](https://github.com/avoidwork/madz/pull/1014) -- chore: release v1.69.1 [`#1012`](https://github.com/avoidwork/madz/pull/1012) -- fix: configure ONNX Runtime WASM backend for local embeddings on Alpine/musl [`#1011`](https://github.com/avoidwork/madz/pull/1011) -- chore: release v1.69.0 [`#1008`](https://github.com/avoidwork/madz/pull/1008) -- feat: add sqlite-vec code search for semantic source code retrieval [`#1007`](https://github.com/avoidwork/madz/pull/1007) -- docs: update rule 12 to route skills by catalog grouping instead of reading SKILL.md [`#1006`](https://github.com/avoidwork/madz/pull/1006) -- chore: release v1.68.5 [`#1004`](https://github.com/avoidwork/madz/pull/1004) -- feat: eliminate duplicate skills prompt injection, normalize skill path formats [`#1003`](https://github.com/avoidwork/madz/pull/1003) -- chore: release v1.68.4 [`#1001`](https://github.com/avoidwork/madz/pull/1001) -- fix: restore symmetric padding on message bubble header [`#1000`](https://github.com/avoidwork/madz/pull/1000) -- chore: release v1.68.3 [`#999`](https://github.com/avoidwork/madz/pull/999) -- fix: status bar contextSize counter inaccurate in chat and skill modes [`#998`](https://github.com/avoidwork/madz/pull/998) -- chore: release v1.68.2 [`#996`](https://github.com/avoidwork/madz/pull/996) -- fix: sanitize colons in model name for harness profile key (#994) [`#995`](https://github.com/avoidwork/madz/pull/995) -- chore(deps): bump puppeteer from 25.9.0 to 25.10.0 [`#984`](https://github.com/avoidwork/madz/pull/984) -- chore: release v1.68.1 [`#993`](https://github.com/avoidwork/madz/pull/993) -- fix: prevent stray "." reasoning chunk from splitting message streaming [`#992`](https://github.com/avoidwork/madz/pull/992) -- docs: update CHANGELOG.md with latest entries [`#991`](https://github.com/avoidwork/madz/pull/991) -- feat: interleave reasoning and message segments in message bubble [`#990`](https://github.com/avoidwork/madz/pull/990) -- fix: copy scripts/ directory before npm ci in Dockerfile [`#988`](https://github.com/avoidwork/madz/pull/988) -- chore: release v1.68.0 [`#987`](https://github.com/avoidwork/madz/pull/987) -- feat: add reasoning effort support across config, provider, streaming, and TUI [`#981`](https://github.com/avoidwork/madz/pull/981) -- chore(deps): bump deepagents from 1.13.2 to 1.13.3 [`#986`](https://github.com/avoidwork/madz/pull/986) -- chore(deps): bump @langchain/langgraph in the langgraph group [`#982`](https://github.com/avoidwork/madz/pull/982) -- chore: release v1.67.2 [`#980`](https://github.com/avoidwork/madz/pull/980) -- docs: remove dimColor from timer and tool call elements [`#979`](https://github.com/avoidwork/madz/pull/979) -- chore: release v1.67.1 [`#978`](https://github.com/avoidwork/madz/pull/978) -- fix: remove tool output noise from streaming message bubble [`#977`](https://github.com/avoidwork/madz/pull/977) -- chore: release v1.67.0 [`#976`](https://github.com/avoidwork/madz/pull/976) -- fix: add tools stream mode for tool lifecycle events [`#974`](https://github.com/avoidwork/madz/pull/974) -- chore: release v1.66.0 [`#973`](https://github.com/avoidwork/madz/pull/973) -- feat: systematically achieve 90% test coverage per file [`#971`](https://github.com/avoidwork/madz/pull/971) -- chore: release v1.65.0 [`#970`](https://github.com/avoidwork/madz/pull/970) -- feat: split TUI into ConversationArea and InputArea with thin App router [`#969`](https://github.com/avoidwork/madz/pull/969) -- chore: bump 7 dependencies to latest versions [`#966`](https://github.com/avoidwork/madz/pull/966) -- chore: release v1.64.0 [`#964`](https://github.com/avoidwork/madz/pull/964) -- feat: add configurable rate limit parameters to ChatOpenAI provider [`#963`](https://github.com/avoidwork/madz/pull/963) -- chore: release v1.63.0 [`#961`](https://github.com/avoidwork/madz/pull/961) -- feat: enable dynamic subagents via CodeInterpreterMiddleware [`#960`](https://github.com/avoidwork/madz/pull/960) -- chore: bump version to 1.62.4 [skip ci] [`#958`](https://github.com/avoidwork/madz/pull/958) -- fix: remove unused tui.cursorChar config option [`#957`](https://github.com/avoidwork/madz/pull/957) -- chore: release v1.62.3 [`#956`](https://github.com/avoidwork/madz/pull/956) -- fix: add missing config sections to config.yaml [`#955`](https://github.com/avoidwork/madz/pull/955) -- chore(deps): bump puppeteer from 25.8.0 to 25.9.0 [`#946`](https://github.com/avoidwork/madz/pull/946) -- chore: release v1.62.2 [`#944`](https://github.com/avoidwork/madz/pull/944) -- fix: memoize streaming token calculations in TUI [`#942`](https://github.com/avoidwork/madz/pull/942) -- fix: update status bar context size during streaming [`#940`](https://github.com/avoidwork/madz/pull/940) -- fix: ensure checkpoints directory is writable in host-mounted volumes [`#938`](https://github.com/avoidwork/madz/pull/938) -- chore: release v1.62.1 [`#937`](https://github.com/avoidwork/madz/pull/937) -- fix: resolve SQLite path using resolve() instead of join() [`#936`](https://github.com/avoidwork/madz/pull/936) -- chore: release v1.62.0 [`#935`](https://github.com/avoidwork/madz/pull/935) -- chore: bump dependencies to latest versions [`#934`](https://github.com/avoidwork/madz/pull/934) -- feat: change default memory checkpointer from 'memory' to 'sqlite' [`#933`](https://github.com/avoidwork/madz/pull/933) -- Missed by madz [`#928`](https://github.com/avoidwork/madz/pull/928) -- chore: bump version to 1.61.0 [`#927`](https://github.com/avoidwork/madz/pull/927) -- feat(tui): derive locale from timezone for 12/24-hour time formatting [`#926`](https://github.com/avoidwork/madz/pull/926) -- chore: release v1.60.0 [`#925`](https://github.com/avoidwork/madz/pull/925) -- feat: replace hardcoded thinking with randomized word list in assistant spinner [`#924`](https://github.com/avoidwork/madz/pull/924) -- fix: include package-lock.json in release commit [`#922`](https://github.com/avoidwork/madz/pull/922) -- chore: release v1.59.1 [`#921`](https://github.com/avoidwork/madz/pull/921) -- fix: hide empty non-streaming assistant bubbles [`#920`](https://github.com/avoidwork/madz/pull/920) -- fix: show spinner only during active streaming [`#919`](https://github.com/avoidwork/madz/pull/919) -- chore: release v1.59.0 [`#918`](https://github.com/avoidwork/madz/pull/918) -- feat: optimize TUI render performance with memoization and cache cleanup [`#916`](https://github.com/avoidwork/madz/pull/916) -- fix(tui): remove scrollOffset state to eliminate render loop flicker [`#915`](https://github.com/avoidwork/madz/pull/915) -- chore: release v1.58.2 [`#911`](https://github.com/avoidwork/madz/pull/911) -- fix(tui): auto-scroll not triggering during streaming responses [`#910`](https://github.com/avoidwork/madz/pull/910) -- chore: release v1.58.1 [`#908`](https://github.com/avoidwork/madz/pull/908) -- fix: move webhooks.json fixture to tests/fixtures/ [`#907`](https://github.com/avoidwork/madz/pull/907) -- chore: restructure src/tools for consistent organizational pattern [`#906`](https://github.com/avoidwork/madz/pull/906) -- refactor: restructure src/agent/definitions for better cohesion [`#905`](https://github.com/avoidwork/madz/pull/905) -- chore: release v1.58.0 [`#902`](https://github.com/avoidwork/madz/pull/902) -- feat: remove renderWindow message limit from TUI message list panel [`#901`](https://github.com/avoidwork/madz/pull/901) -- chore: release v1.57.3 [`#899`](https://github.com/avoidwork/madz/pull/899) -- chore: optimize Dockerfile with multi-stage cargo-audit build [`#898`](https://github.com/avoidwork/madz/pull/898) -- chore: prepare for version bump [`#897`](https://github.com/avoidwork/madz/pull/897) -- chore: release v1.57.2 [`#896`](https://github.com/avoidwork/madz/pull/896) -- fix: resolve TUI flicker on keystrokes and spinner updates [`#895`](https://github.com/avoidwork/madz/pull/895) -- fix: TUI streaming auto-scroll broken and performance issues [`#893`](https://github.com/avoidwork/madz/pull/893) -- chore: bump version to 1.57.1 [`#891`](https://github.com/avoidwork/madz/pull/891) -- fix: download vault from HashiCorp releases instead of Alpine community repo [`#890`](https://github.com/avoidwork/madz/pull/890) -- chore: release v1.57.0 [`#889`](https://github.com/avoidwork/madz/pull/889) -- feat: add vault CLI to Docker image [`#888`](https://github.com/avoidwork/madz/pull/888) -- chore: release v1.56.0 [`#886`](https://github.com/avoidwork/madz/pull/886) -- chore: archive all completed OpenSpec changes (5 changes) [`#885`](https://github.com/avoidwork/madz/pull/885) -- feat: add polyglot dev tools to Docker container [`#884`](https://github.com/avoidwork/madz/pull/884) -- chore: release v1.55.0 [`#880`](https://github.com/avoidwork/madz/pull/880) -- feat: add chromium to Dockerfile [`#879`](https://github.com/avoidwork/madz/pull/879) -- chore: release v1.54.0 [`#877`](https://github.com/avoidwork/madz/pull/877) -- feat: add structured data and API interaction tools [`#869`](https://github.com/avoidwork/madz/pull/869) -- chore: release v1.53.1 [`#876`](https://github.com/avoidwork/madz/pull/876) -- fix: add cronJob tool access to the orchestrator [`#875`](https://github.com/avoidwork/madz/pull/875) -- chore: release v1.53.0 [`#873`](https://github.com/avoidwork/madz/pull/873) -- feat: add tzdata to Docker container for timezone resolution [`#872`](https://github.com/avoidwork/madz/pull/872) -- chore: release v1.52.0 [`#867`](https://github.com/avoidwork/madz/pull/867) -- chore(deps): bump pptxgenjs from 3.12.0 to 4.0.1 [`#864`](https://github.com/avoidwork/madz/pull/864) -- Revert "feat: add structured data and API interaction tools (#865)" [`#866`](https://github.com/avoidwork/madz/pull/866) -- feat: add structured data and API interaction tools [`#865`](https://github.com/avoidwork/madz/pull/865) -- chore(deps): bump deepagents from 1.13.0 to 1.13.1 [`#863`](https://github.com/avoidwork/madz/pull/863) -- chore: release v1.51.0 [`#862`](https://github.com/avoidwork/madz/pull/862) -- feat: add presentation creation tool with pptxgenjs [`#860`](https://github.com/avoidwork/madz/pull/860) -- chore: release v1.50.1 [`#859`](https://github.com/avoidwork/madz/pull/859) -- feat: make render window configurable via tui.renderWindow [`#858`](https://github.com/avoidwork/madz/pull/858) -- chore: release v1.50.0 [`#855`](https://github.com/avoidwork/madz/pull/855) -- feat: add text, seo, and translate tools [`#852`](https://github.com/avoidwork/madz/pull/852) -- feat: add name.com API tool with username/token auth [`#854`](https://github.com/avoidwork/madz/pull/854) -- chore: release v1.49.2 [`#851`](https://github.com/avoidwork/madz/pull/851) -- fix: default process tool action to 'start' when only command is provided [`#850`](https://github.com/avoidwork/madz/pull/850) -- chore: release v1.49.1 [`#849`](https://github.com/avoidwork/madz/pull/849) -- fix: add subAgentsTemperature defaults to config.yaml and README [`#848`](https://github.com/avoidwork/madz/pull/848) -- chore: release v1.49.0 [`#847`](https://github.com/avoidwork/madz/pull/847) -- fix: escape -- flags in process tool commands [`#846`](https://github.com/avoidwork/madz/pull/846) -- feat: add subAgentsTemperature config for per-agent temperature tuning [`#844`](https://github.com/avoidwork/madz/pull/844) -- chore: release v1.48.1 [`#842`](https://github.com/avoidwork/madz/pull/842) -- docs: restore original Identity section prose in SYSTEM_PROMPT.md [`#841`](https://github.com/avoidwork/madz/pull/841) -- chore: release v1.48.0 [`#840`](https://github.com/avoidwork/madz/pull/840) -- feat: merge shell and process tools into unified process tool [`#838`](https://github.com/avoidwork/madz/pull/838) -- chore: release v1.47.2 [`#837`](https://github.com/avoidwork/madz/pull/837) -- fix(tui): remove nonexistent setInterrupted calls causing unhandled rejection [`#836`](https://github.com/avoidwork/madz/pull/836) -- Revert "fix: add missing useState declaration for interrupted in handleInterrupt (#834)" [`#835`](https://github.com/avoidwork/madz/pull/835) -- fix: add missing useState declaration for interrupted in handleInterrupt [`#834`](https://github.com/avoidwork/madz/pull/834) -- chore: release v1.47.1 [`#830`](https://github.com/avoidwork/madz/pull/830) -- fix: use setInputText instead of setInputValue in handleInterrupt [`#829`](https://github.com/avoidwork/madz/pull/829) -- chore: release v1.47.0 [`#826`](https://github.com/avoidwork/madz/pull/826) -- feat: add configurable skill-to-agent mapping via config.yaml [`#825`](https://github.com/avoidwork/madz/pull/825) -- feat: add ESC interrupt/skip behavior in TUI [`#821`](https://github.com/avoidwork/madz/pull/821) -- feat: add structured data and API tools (OpenSpec proposal) [`#823`](https://github.com/avoidwork/madz/pull/823) -- feat: add presentation creation tool (OpenSpec proposal) [`#822`](https://github.com/avoidwork/madz/pull/822) -- chore: release v1.46.0 [`#820`](https://github.com/avoidwork/madz/pull/820) -- chore(deps): bump dependencies to latest versions [`#819`](https://github.com/avoidwork/madz/pull/819) -- feat: add spreadsheet computation and analysis tool [`#818`](https://github.com/avoidwork/madz/pull/818) -- feat: add document creation/writer tools [`#817`](https://github.com/avoidwork/madz/pull/817) -- feat: add PDF generation and manipulation tools [`#815`](https://github.com/avoidwork/madz/pull/815) -- feat: add calendar management tools (read, create, schedule) [`#813`](https://github.com/avoidwork/madz/pull/813) -- chore: release v1.45.1 [`#812`](https://github.com/avoidwork/madz/pull/812) -- chore(deps): bump oxlint from 1.77.0 to 1.78.0 [`#805`](https://github.com/avoidwork/madz/pull/805) -- chore(deps): bump cron-parser from 5.7.0 to 5.10.0 [`#806`](https://github.com/avoidwork/madz/pull/806) -- chore(deps): bump js-yaml from 5.2.3 to 5.3.0 [`#807`](https://github.com/avoidwork/madz/pull/807) -- chore(deps): bump ansi-regex from 6.2.2 to 6.3.0 [`#809`](https://github.com/avoidwork/madz/pull/809) -- chore(deps): bump oxfmt from 0.62.0 to 0.63.0 [`#810`](https://github.com/avoidwork/madz/pull/810) -- chore(deps): bump adm-zip from 0.5.18 to 0.6.0 [`#811`](https://github.com/avoidwork/madz/pull/811) -- fix: replace sessionId with sessionState.getSessionId() in saveSession calls [`#803`](https://github.com/avoidwork/madz/pull/803) -- chore(deps): bump deepagents from 1.12.2 to 1.12.4 [`#808`](https://github.com/avoidwork/madz/pull/808) -- chore(deps): bump the langgraph group with 2 updates [`#804`](https://github.com/avoidwork/madz/pull/804) -- chore: release v1.45.0 [`#802`](https://github.com/avoidwork/madz/pull/802) -- fix: remove writeMemoryFile from session handling [`#801`](https://github.com/avoidwork/madz/pull/801) -- feat: add email integration (read, send, manage) [`#800`](https://github.com/avoidwork/madz/pull/800) -- Revert "feat: add @-triggered file path autocomplete to TUI input panel (#798)" [`#799`](https://github.com/avoidwork/madz/pull/799) -- feat: add @-triggered file path autocomplete to TUI input panel [`#798`](https://github.com/avoidwork/madz/pull/798) -- chore: release v1.44.3 [`#797`](https://github.com/avoidwork/madz/pull/797) -- Revert "feat: add @-triggered file path autocomplete to TUI input panel (#793)" [`#795`](https://github.com/avoidwork/madz/pull/795) -- refactor: remove grep and ls from agent tool sets and harness excludedTools [`#794`](https://github.com/avoidwork/madz/pull/794) -- feat: add @-triggered file path autocomplete to TUI input panel [`#793`](https://github.com/avoidwork/madz/pull/793) -- chore: release v1.44.2 [`#791`](https://github.com/avoidwork/madz/pull/791) -- fix: remove dead tool references (skillView, skillsList) from prompt files [`#790`](https://github.com/avoidwork/madz/pull/790) -- chore: release v1.44.1 [`#776`](https://github.com/avoidwork/madz/pull/776) -- refactor: replace custom LRUCache with tiny-lru [`#775`](https://github.com/avoidwork/madz/pull/775) -- chore: release v1.44.0 [`#774`](https://github.com/avoidwork/madz/pull/774) -- fix: persist session before switching to new session [`#773`](https://github.com/avoidwork/madz/pull/773) -- fix: remove DEFAULT_MAX_RESULTS cap from reflection tool [`#772`](https://github.com/avoidwork/madz/pull/772) -- feat: add file format extraction tools (docx, pptx, xlsx, pdf, etc.) [`#770`](https://github.com/avoidwork/madz/pull/770) -- fix: add .worktrees/ to .gitignore [`#771`](https://github.com/avoidwork/madz/pull/771) -- feat: add reflection tool with configurable ignore patterns [`#769`](https://github.com/avoidwork/madz/pull/769) -- docs: add OpenSpec change for renaming system-skills to .skills/ [`#766`](https://github.com/avoidwork/madz/pull/766) -- docs: update README.md skill scan paths to .skills/ [`#765`](https://github.com/avoidwork/madz/pull/765) -- chore: release v1.43.0 [`#764`](https://github.com/avoidwork/madz/pull/764) -- feat: rename system-skills directory to .skills/ [`#763`](https://github.com/avoidwork/madz/pull/763) -- chore: release v1.42.7 [`#760`](https://github.com/avoidwork/madz/pull/760) -- docs: refine system prompt — add baseline voice, tighten tool-call rules, add graceful closure [`#759`](https://github.com/avoidwork/madz/pull/759) -- chore: release v1.42.6 [`#758`](https://github.com/avoidwork/madz/pull/758) -- fix: tighten SYSTEM_PROMPT tone, refusal, cutoff; restore Identity prose [`#757`](https://github.com/avoidwork/madz/pull/757) -- chore: release v1.42.5 [`#756`](https://github.com/avoidwork/madz/pull/756) -- docs: update SYSTEM_PROMPT.md with 12 improvements [`#755`](https://github.com/avoidwork/madz/pull/755) -- chore: release v1.42.4 [`#754`](https://github.com/avoidwork/madz/pull/754) -- refactor: apply 7 OpenSpec changes across all subsystems [`#753`](https://github.com/avoidwork/madz/pull/753) -- chore: add OpenSpec for TUI redundant re-export cleanup [`#752`](https://github.com/avoidwork/madz/pull/752) -- chore: add OpenSpec for shell/process tool split [`#751`](https://github.com/avoidwork/madz/pull/751) -- chore: add OpenSpec for session barrel cleanup [`#750`](https://github.com/avoidwork/madz/pull/750) -- chore: add OpenSpec for memory file rename [`#749`](https://github.com/avoidwork/madz/pull/749) -- chore: add OpenSpec for config schemas restructuring [`#748`](https://github.com/avoidwork/madz/pull/748) -- chore: add OpenSpec for agent definitions refactoring [`#747`](https://github.com/avoidwork/madz/pull/747) -- chore: release v1.42.3 [`#736`](https://github.com/avoidwork/madz/pull/736) -- fix: remove unnecessary separator from status bar [`#735`](https://github.com/avoidwork/madz/pull/735) -- chore: release v1.42.2 [`#734`](https://github.com/avoidwork/madz/pull/734) -- docs: fix reflection skill audit issues and add shell example [`#733`](https://github.com/avoidwork/madz/pull/733) -- chore: release v1.42.1 [`#732`](https://github.com/avoidwork/madz/pull/732) -- fix(tui): unify system and user message bubble styling [`#731`](https://github.com/avoidwork/madz/pull/731) -- chore: bump version to 1.42.0 [`#730`](https://github.com/avoidwork/madz/pull/730) -- feat(tui): replace status bar indicator with spinner animation [`#729`](https://github.com/avoidwork/madz/pull/729) -- chore: release v1.42.0 [`#728`](https://github.com/avoidwork/madz/pull/728) -- docs: add tool call discipline rules to system prompt [`#727`](https://github.com/avoidwork/madz/pull/727) -- chore: remove dead skillsList and skillView tools [`#726`](https://github.com/avoidwork/madz/pull/726) -- docs: remove npm global install option from tutorial [`#725`](https://github.com/avoidwork/madz/pull/725) -- chore: release v1.41.1 [`#724`](https://github.com/avoidwork/madz/pull/724) -- chore: darken status bar background to match user message bubble [`#723`](https://github.com/avoidwork/madz/pull/723) -- fix: await skillRegistry.discover() in deepAgents and skills tools [`#722`](https://github.com/avoidwork/madz/pull/722) -- docs: fix system prompt contradictions and suppress deepagents memory middleware [`#721`](https://github.com/avoidwork/madz/pull/721) -- fix(tui): add gap between bubble header and content [`#720`](https://github.com/avoidwork/madz/pull/720) -- fix(tui): make message bubbles 100% width instead of 90% max-width [`#719`](https://github.com/avoidwork/madz/pull/719) -- fix(tui): render system message content in orange and preserve conversation on errors [`#718`](https://github.com/avoidwork/madz/pull/718) -- chore(openspec): archive 2026-08-08-fix-markdown-tables-rendering change [`#717`](https://github.com/avoidwork/madz/pull/717) -- fix(tui): focus-aware key routing and streaming auto-scroll [`#713`](https://github.com/avoidwork/madz/pull/713) -- fix(tui): reduce message list redraws and fix thinking block visibility [`#710`](https://github.com/avoidwork/madz/pull/710) -- chore: bump to v1.41.0 [`#709`](https://github.com/avoidwork/madz/pull/709) -- feat: add tool schema validation and caching directive to system prompt [`#708`](https://github.com/avoidwork/madz/pull/708) -- feat: add webSearch and webExtract to coding agent tools [`#706`](https://github.com/avoidwork/madz/pull/706) -- chore: bump version to 1.40.0 [`#704`](https://github.com/avoidwork/madz/pull/704) -- feat: remove executeCode tool and posix dependency [`#703`](https://github.com/avoidwork/madz/pull/703) -- chore(deps): bump all dependencies to latest versions [`#701`](https://github.com/avoidwork/madz/pull/701) -- chore: release v1.39.0 [`#700`](https://github.com/avoidwork/madz/pull/700) -- fix(tui): restore markdown table rendering with correct delimiter parsing [`#699`](https://github.com/avoidwork/madz/pull/699) -- fix: restore markdown table rendering by fixing cell delimiter regex [`#698`](https://github.com/avoidwork/madz/pull/698) -- feat: replace marked-terminal with custom terminal renderer [`#696`](https://github.com/avoidwork/madz/pull/696) -- chore(deps): bump deepagents from 1.11.1 to 1.12.1 [`#689`](https://github.com/avoidwork/madz/pull/689) -- chore: release v1.38.18 [`#693`](https://github.com/avoidwork/madz/pull/693) -- fix(tui): add missing logger import in app.js [`#692`](https://github.com/avoidwork/madz/pull/692) -- chore: release v1.38.17 [`#688`](https://github.com/avoidwork/madz/pull/688) -- fix: write .env.cron on startup and source in crontab entries [`#687`](https://github.com/avoidwork/madz/pull/687) -- chore: release v1.38.16 [`#685`](https://github.com/avoidwork/madz/pull/685) -- fix: replace sync fs calls in async contexts and silent catch blocks [`#684`](https://github.com/avoidwork/madz/pull/684) -- chore: release v1.38.15 [`#682`](https://github.com/avoidwork/madz/pull/682) -- fix: inherit environment variables in LocalShellBackend [`#681`](https://github.com/avoidwork/madz/pull/681) -- chore: release v1.38.14 [`#680`](https://github.com/avoidwork/madz/pull/680) -- fix: destructure stdout in Cron._readCrontab() [`#679`](https://github.com/avoidwork/madz/pull/679) -- chore: release v1.38.12 [`#678`](https://github.com/avoidwork/madz/pull/678) -- fix: exclude 'execute' tool from sub-agent tool set [`#677`](https://github.com/avoidwork/madz/pull/677) -- chore: release v1.38.11 [`#676`](https://github.com/avoidwork/madz/pull/676) -- fix: use LocalShellBackend for core backend to satisfy SandboxBackendProtocol [`#675`](https://github.com/avoidwork/madz/pull/675) -- fix: exempt shell tool from permission gating in buildToolConfig [`#674`](https://github.com/avoidwork/madz/pull/674) -- fix(scheduler): restore context loading for skill-based runNow entries [`#672`](https://github.com/avoidwork/madz/pull/672) -- fix: load scheduler jobs from disk JSON files at startup [`#671`](https://github.com/avoidwork/madz/pull/671) -- chore: release v1.38.10 [`#670`](https://github.com/avoidwork/madz/pull/670) -- fix: correct agent prompts, tool lists, and tests [`#669`](https://github.com/avoidwork/madz/pull/669) -- fix: migrate cron module to async API and merge duplicate imports [`#668`](https://github.com/avoidwork/madz/pull/668) -- chore: release v1.38.9 [`#667`](https://github.com/avoidwork/madz/pull/667) -- fix(scheduler): ensure reflection-daily job file exists on disk [`#666`](https://github.com/avoidwork/madz/pull/666) -- chore: release v1.38.8 [`#665`](https://github.com/avoidwork/madz/pull/665) -- fix: remove manual keystroke handling from onboarding input [`#664`](https://github.com/avoidwork/madz/pull/664) -- chore: release v1.38.7 [`#662`](https://github.com/avoidwork/madz/pull/662) -- fix: update Dockerfile profile script to use root index.js path [`#661`](https://github.com/avoidwork/madz/pull/661) -- chore: release v1.38.6 [`#660`](https://github.com/avoidwork/madz/pull/660) -- refactor: restructure project layout and scheduler setup [`#659`](https://github.com/avoidwork/madz/pull/659) -- chore: release v1.38.5 [`#658`](https://github.com/avoidwork/madz/pull/658) -- feat: add auto-scheduling for scheduler module [`#657`](https://github.com/avoidwork/madz/pull/657) -- docs: add cwd restriction rule to system prompt [`#656`](https://github.com/avoidwork/madz/pull/656) -- chore: release v1.38.4 [`#655`](https://github.com/avoidwork/madz/pull/655) -- fix: unify cron job commands and remove redundant path handling [`#654`](https://github.com/avoidwork/madz/pull/654) -- chore: release v1.38.3 [`#652`](https://github.com/avoidwork/madz/pull/652) -- fix: use absolute paths for skill locations in getSkillPathsForAgent [`#651`](https://github.com/avoidwork/madz/pull/651) -- chore(deps): bump oxlint from 1.74.0 to 1.76.0 [`#650`](https://github.com/avoidwork/madz/pull/650) -- chore(deps): bump oxfmt from 0.59.0 to 0.61.0 [`#646`](https://github.com/avoidwork/madz/pull/646) -- chore(deps): bump yargs from 18.0.0 to 18.1.0 [`#647`](https://github.com/avoidwork/madz/pull/647) -- chore(deps): bump @opentelemetry/sdk-node in the opentelemetry group [`#645`](https://github.com/avoidwork/madz/pull/645) -- chore(deps): bump js-yaml from 5.2.1 to 5.2.2 [`#648`](https://github.com/avoidwork/madz/pull/648) -- chore: bump version to 1.38.2 (patch correction) [`#644`](https://github.com/avoidwork/madz/pull/644) -- feat: update memory, session, skills, and scheduler modules [`#643`](https://github.com/avoidwork/madz/pull/643) -- chore: release v1.38.1 [`#642`](https://github.com/avoidwork/madz/pull/642) -- docs: remove rule 34 from SYSTEM_PROMPT.md [`#641`](https://github.com/avoidwork/madz/pull/641) -- Revert shell tool changes to eliminate deepagents conflict [`#640`](https://github.com/avoidwork/madz/pull/640) -- chore: release v1.38.0 [`#638`](https://github.com/avoidwork/madz/pull/638) -- feat: upgrade backends to LocalShellBackend and ensure dirs exist [`#636`](https://github.com/avoidwork/madz/pull/636) -- fix: remove shell tool to eliminate deepagents conflict [`#635`](https://github.com/avoidwork/madz/pull/635) -- feat: move config.yaml and index.js into src/ — fixes #630 [`#632`](https://github.com/avoidwork/madz/pull/632) -- fix(shell): add explicit cwd to spawn calls [`#631`](https://github.com/avoidwork/madz/pull/631) -- chore: release v1.37.4 [`#629`](https://github.com/avoidwork/madz/pull/629) -- fix: DMZ backend should use /app/tmp instead of /tmp to avoid permission issues [`#628`](https://github.com/avoidwork/madz/pull/628) -- chore: release v1.37.3 [`#626`](https://github.com/avoidwork/madz/pull/626) -- fix: refactor path handling to use relative paths with optional cwd [`#625`](https://github.com/avoidwork/madz/pull/625) -- chore: release v1.37.2 [`#623`](https://github.com/avoidwork/madz/pull/623) -- chore: fix sync FS calls in async functions and add debug logging [`#622`](https://github.com/avoidwork/madz/pull/622) -- chore: release v1.37.1 [`#620`](https://github.com/avoidwork/madz/pull/620) -- fix: create log directory in Dockerfile for cron log persistence [`#619`](https://github.com/avoidwork/madz/pull/619) -- fix: route dmzBackend to /tmp instead of / to prevent context leakage [`#618`](https://github.com/avoidwork/madz/pull/618) -- fix(dmz): enable virtualMode to sandbox filesystem access [`#617`](https://github.com/avoidwork/madz/pull/617) -- chore: release v1.37.0 [`#616`](https://github.com/avoidwork/madz/pull/616) -- feat: add skills-to-agent mapping injection into orchestrator prompt [`#615`](https://github.com/avoidwork/madz/pull/615) -- fix: correct config loader import path in contextBackend.js [`#614`](https://github.com/avoidwork/madz/pull/614) -- fix: restructure backends into dedicated directory [`#613`](https://github.com/avoidwork/madz/pull/613) -- chore: release v1.36.1 [`#612`](https://github.com/avoidwork/madz/pull/612) -- refactor: convert skill paths to relative paths in registry [`#611`](https://github.com/avoidwork/madz/pull/611) -- chore: release v1.36.0 [`#610`](https://github.com/avoidwork/madz/pull/610) -- fix: make cron log path configurable via scheduler config [`#609`](https://github.com/avoidwork/madz/pull/609) -- docs: update openspec/config.yaml with full project context [`#605`](https://github.com/avoidwork/madz/pull/605) -- feat: wire up streamEvents and add events array to message model [`#603`](https://github.com/avoidwork/madz/pull/603) -- chore: release v1.35.2 [`#598`](https://github.com/avoidwork/madz/pull/598) -- docs: update SKILL.md and SYSTEM_PROMPT.md [`#597`](https://github.com/avoidwork/madz/pull/597) -- chore: release v1.35.1 [`#596`](https://github.com/avoidwork/madz/pull/596) -- feat: update js-yaml to 5.2.1 with named exports migration [`#594`](https://github.com/avoidwork/madz/pull/594) -- chore: release v1.35.0 [`#593`](https://github.com/avoidwork/madz/pull/593) -- feat: replace input panel with ink-text-input component [`#592`](https://github.com/avoidwork/madz/pull/592) -- chore(deps): bump oxfmt from 0.58.0 to 0.59.0 [`#590`](https://github.com/avoidwork/madz/pull/590) -- chore(deps): bump oxlint from 1.73.0 to 1.74.0 [`#587`](https://github.com/avoidwork/madz/pull/587) -- chore(actions): bump actions/setup-node from 6 to 7 [`#585`](https://github.com/avoidwork/madz/pull/585) -- chore(deps): bump deepagents from 1.10.8 to 1.11.1 [`#588`](https://github.com/avoidwork/madz/pull/588) -- chore(deps): bump ink from 7.1.0 to 7.1.1 [`#589`](https://github.com/avoidwork/madz/pull/589) -- chore(deps): bump @langchain/langgraph in the langgraph group [`#586`](https://github.com/avoidwork/madz/pull/586) -- chore: release v1.34.1 [`#584`](https://github.com/avoidwork/madz/pull/584) -- chore: regenerate CHANGELOG.md [`#583`](https://github.com/avoidwork/madz/pull/583) -- fix(tui): correct scroll direction in messageList scrollBy [`#582`](https://github.com/avoidwork/madz/pull/582) -- chore: update changelog for 1.34.0 [`#581`](https://github.com/avoidwork/madz/pull/581) -- fix(tui): use functional setState in scrollBy to avoid stale closure [`#580`](https://github.com/avoidwork/madz/pull/580) -- fix(tui): replace scrollBy calls with MessageList imperative API [`#579`](https://github.com/avoidwork/madz/pull/579) -- chore: release v1.34.0 [`#578`](https://github.com/avoidwork/madz/pull/578) -- fix(tui): migrate to ControlledScrollView with onContentHeightChange [`#577`](https://github.com/avoidwork/madz/pull/577) -- docs: add agent routing rule for skills with metadata.agent [`#576`](https://github.com/avoidwork/madz/pull/576) -- feat: add coding agent with tool classifications and skill filtering [`#575`](https://github.com/avoidwork/madz/pull/575) -- chore: release v1.33.0 [`#574`](https://github.com/avoidwork/madz/pull/574) -- feat: add /exit as alias for /quit [`#573`](https://github.com/avoidwork/madz/pull/573) -- chore: release v1.32.2 [`#570`](https://github.com/avoidwork/madz/pull/570) -- fix: map subagent tool names to instances in createSubagentDefinitions [`#569`](https://github.com/avoidwork/madz/pull/569) -- chore: release v1.32.1 [`#568`](https://github.com/avoidwork/madz/pull/568) -- docs: add subagent guidance and relax task tool restriction [`#567`](https://github.com/avoidwork/madz/pull/567) -- chore: release v1.32.0 [`#566`](https://github.com/avoidwork/madz/pull/566) -- feat: create subagent definitions for deepagents library [`#565`](https://github.com/avoidwork/madz/pull/565) -- chore: release v1.31.0 [`#563`](https://github.com/avoidwork/madz/pull/563) -- feat: add ink-spinner to assistant response bubble [`#562`](https://github.com/avoidwork/madz/pull/562) -- chore: normalize YAML frontmatter in OpenSpec skill files [`#561`](https://github.com/avoidwork/madz/pull/561) -- chore: bump version to 1.30.1 [`#559`](https://github.com/avoidwork/madz/pull/559) -- fix: webSearch now honors SEARXNG_URL config [`#558`](https://github.com/avoidwork/madz/pull/558) -- chore: release v1.30.0 [`#556`](https://github.com/avoidwork/madz/pull/556) -- feat: replace ref-based messages with component-based message bubbles [`#555`](https://github.com/avoidwork/madz/pull/555) -- chore(deps): bump oxfmt from 0.57.0 to 0.58.0 [`#550`](https://github.com/avoidwork/madz/pull/550) -- chore(deps): bump deepagents from 1.10.5 to 1.10.8 [`#552`](https://github.com/avoidwork/madz/pull/552) -- chore(deps): bump cron-parser from 5.6.1 to 5.6.2 [`#549`](https://github.com/avoidwork/madz/pull/549) -- chore(deps): bump @langchain/openai in the langgraph group [`#548`](https://github.com/avoidwork/madz/pull/548) -- chore: remove trailing slashes from .gitignore entries [`#547`](https://github.com/avoidwork/madz/pull/547) -- chore(deps): bump oxlint from 1.71.0 to 1.72.0 [`#540`](https://github.com/avoidwork/madz/pull/540) -- chore(deps): bump oxfmt from 0.56.0 to 0.57.0 [`#539`](https://github.com/avoidwork/madz/pull/539) -- chore(deps): bump @opentelemetry/sdk-node in the opentelemetry group [`#537`](https://github.com/avoidwork/madz/pull/537) -- chore: bump version to 1.29.1 (patch - maintenance release) [`#544`](https://github.com/avoidwork/madz/pull/544) -- chore: remove duplicate tools superseded by deepagents [`#543`](https://github.com/avoidwork/madz/pull/543) -- docs: add edit_file and write_todos to ignored tools in system prompt [`#542`](https://github.com/avoidwork/madz/pull/542) -- chore: release v1.29.0 [`#534`](https://github.com/avoidwork/madz/pull/534) -- feat: fix cron jobs silently ignored due to crond misconfiguration [`#533`](https://github.com/avoidwork/madz/pull/533) -- chore: release v1.28.0 [`#532`](https://github.com/avoidwork/madz/pull/532) -- fix: rename tools to camelCase, convert to singletons, add permissions [`#531`](https://github.com/avoidwork/madz/pull/531) -- docs: rewrite CODING.md to match SYSTEM_PROMPT structure [`#530`](https://github.com/avoidwork/madz/pull/530) -- feat: replace terminal tool with shell tool [`#529`](https://github.com/avoidwork/madz/pull/529) -- docs: add rule to keep skill execution inline within same agent [`#528`](https://github.com/avoidwork/madz/pull/528) -- docs: restructure system prompt into rules and forbidden patterns [`#527`](https://github.com/avoidwork/madz/pull/527) -- chore: release v1.27.0 [`#526`](https://github.com/avoidwork/madz/pull/526) -- fix: remove tool filtering in deepAgents orchestrator [`#525`](https://github.com/avoidwork/madz/pull/525) -- feat: categorize skills by metadata.agent field from frontmatter [`#524`](https://github.com/avoidwork/madz/pull/524) -- chore: release v1.26.0 [`#523`](https://github.com/avoidwork/madz/pull/523) -- feat: split filesystem backend into core and DMZ backends [`#522`](https://github.com/avoidwork/madz/pull/522) -- docs: rename CODE_AGENT.md to CODING.md and update coding references [`#521`](https://github.com/avoidwork/madz/pull/521) -- fix: remove unused cwd parameter from createCoreBackend [`#520`](https://github.com/avoidwork/madz/pull/520) -- docs: update OVERVIEW.md architecture diagram [`#518`](https://github.com/avoidwork/madz/pull/518) -- chore: release v1.25.0 [`#517`](https://github.com/avoidwork/madz/pull/517) -- fix: reclassify tool access levels in TOOL_CLASSIFICATIONS [`#516`](https://github.com/avoidwork/madz/pull/516) -- feat: classify and assign tools/skills to orchestrator vs subagents [`#513`](https://github.com/avoidwork/madz/pull/513) -- chore: release v1.24.1 [`#515`](https://github.com/avoidwork/madz/pull/515) -- docs: add conversation start rule to always check date tool [`#514`](https://github.com/avoidwork/madz/pull/514) -- chore: release v1.24.0 [`#509`](https://github.com/avoidwork/madz/pull/509) -- chore: release v1.23.1 [`#508`](https://github.com/avoidwork/madz/pull/508) -- refactor(tui): consolidate streaming handlers in app.js [`#504`](https://github.com/avoidwork/madz/pull/504) -- refactor: replace LangGraph ReAct agent with Deep Agents architecture [`#503`](https://github.com/avoidwork/madz/pull/503) -- chore: release v1.23.0 [`#499`](https://github.com/avoidwork/madz/pull/499) -- feat: delete loadMemories pipeline — remove duplicate memory loading [`#498`](https://github.com/avoidwork/madz/pull/498) -- feat: prioritize profile and ephemeral context in loadContext [`#496`](https://github.com/avoidwork/madz/pull/496) -- chore: release v1.22.3 [`#491`](https://github.com/avoidwork/madz/pull/491) -- fix: refine system prompt for determinism and clarity [`#490`](https://github.com/avoidwork/madz/pull/490) -- fix: audit system prompt, remove contradictions, add computational efficiency section [`#489`](https://github.com/avoidwork/madz/pull/489) -- Revert "refactor: flatten providers config to use type as active provider selector (#485)" [`#487`](https://github.com/avoidwork/madz/pull/487) -- refactor: flatten providers config to use type as active provider selector [`#485`](https://github.com/avoidwork/madz/pull/485) -- chore: release v1.22.2 [`#482`](https://github.com/avoidwork/madz/pull/482) -- fix: restore corrupted JSDoc and function signature in subAgent.js [`#481`](https://github.com/avoidwork/madz/pull/481) -- chore(deps): bump the langgraph group with 2 updates [`#477`](https://github.com/avoidwork/madz/pull/477) -- chore(deps): bump cron-parser from 5.6.0 to 5.6.1 [`#479`](https://github.com/avoidwork/madz/pull/479) -- docs: update project documentation and PR template [`#476`](https://github.com/avoidwork/madz/pull/476) -- chore: bump version to 1.22.1 [`#474`](https://github.com/avoidwork/madz/pull/474) -- fix: use promisify(execFile) in searchFiles to fix trim error [`#472`](https://github.com/avoidwork/madz/pull/472) -- chore: release v1.22.0 [`#466`](https://github.com/avoidwork/madz/pull/466) -- feat: React agent regex false positives, dead code, and test gaps [`#464`](https://github.com/avoidwork/madz/pull/464) -- chore: release v1.21.0 [`#462`](https://github.com/avoidwork/madz/pull/462) -- fix: remove corrupted final line from README.md [`#461`](https://github.com/avoidwork/madz/pull/461) -- feat: add subAgent temperature configuration via config.yaml [`#460`](https://github.com/avoidwork/madz/pull/460) -- fix: add subAgent flag to cached config [`#459`](https://github.com/avoidwork/madz/pull/459) -- chore: bump version to 1.20.0 [`#458`](https://github.com/avoidwork/madz/pull/458) -- feat: enforce cwd and track PIDs in subAgent process delegation [`#456`](https://github.com/avoidwork/madz/pull/456) -- chore: bump version to 1.18.3 [`#454`](https://github.com/avoidwork/madz/pull/454) -- feat: add github-cli to Dockerfile as explicit dependency [`#453`](https://github.com/avoidwork/madz/pull/453) -- feat: add SSH client to Docker container [`#451`](https://github.com/avoidwork/madz/pull/451) -- fix: interrupt tool call 400 error — clean up assistant tool-call message on interrupt [`#446`](https://github.com/avoidwork/madz/pull/446) -- chore: release v1.18.2 [`#443`](https://github.com/avoidwork/madz/pull/443) -- fix: remove MADZ_SUBAGENT_TIMEOUT and MADZ_SESSION_ID dead code from subAgent [`#442`](https://github.com/avoidwork/madz/pull/442) -- chore: release v1.18.1 [`#438`](https://github.com/avoidwork/madz/pull/438) -- fix: searchFiles ReferenceError on stdout?.trim() [`#437`](https://github.com/avoidwork/madz/pull/437) -- chore(deps): bump ink from 7.0.6 to 7.1.0 [`#430`](https://github.com/avoidwork/madz/pull/430) -- chore(deps): bump oxfmt from 0.55.0 to 0.56.0 [`#431`](https://github.com/avoidwork/madz/pull/431) -- chore(deps): bump cron-parser from 5.5.0 to 5.6.0 [`#429`](https://github.com/avoidwork/madz/pull/429) -- chore(deps): bump oxlint from 1.70.0 to 1.71.0 [`#428`](https://github.com/avoidwork/madz/pull/428) -- chore(deps): bump tiny-lru from 12.0.0 to 13.0.0 [`#427`](https://github.com/avoidwork/madz/pull/427) -- chore(deps): bump the langgraph group across 1 directory with 2 updates [`#425`](https://github.com/avoidwork/madz/pull/425) -- chore(actions): bump actions/checkout from 6 to 7 [`#424`](https://github.com/avoidwork/madz/pull/424) -- chore: release v1.18.0 [`#434`](https://github.com/avoidwork/madz/pull/434) -- feat: add turn hash tracking for loop detection [`#433`](https://github.com/avoidwork/madz/pull/433) -- chore: release v1.17.0 [`#432`](https://github.com/avoidwork/madz/pull/432) -- feat: enable streaming mode for non-TUI CLI invocations [`#423`](https://github.com/avoidwork/madz/pull/423) -- chore: release v1.16.0 [`#422`](https://github.com/avoidwork/madz/pull/422) -- feat: add streaming loop detection with sentence sampling [`#421`](https://github.com/avoidwork/madz/pull/421) -- chore: bump version to 1.15.2 [`#417`](https://github.com/avoidwork/madz/pull/417) -- fix: add system-skills directory to prevent reflection skill collision with user mounts [`#416`](https://github.com/avoidwork/madz/pull/416) -- feat: preserve ToolMessage instances through conversation compaction [`#414`](https://github.com/avoidwork/madz/pull/414) -- Revert "feat: config audit fixes — error handling, state divergence, dead code, input validation (#409)" [`#413`](https://github.com/avoidwork/madz/pull/413) -- feat: config audit fixes — error handling, state divergence, dead code, input validation [`#409`](https://github.com/avoidwork/madz/pull/409) -- chore: bump version to 1.15.1 [`#412`](https://github.com/avoidwork/madz/pull/412) -- fix: replace Node.js spawn timeout with system timeout command [`#411`](https://github.com/avoidwork/madz/pull/411) -- chore: release v1.15.0 [`#408`](https://github.com/avoidwork/madz/pull/408) -- feat: subagent-session-id-logging — use session ID instead of PID for subAgent logging [`#400`](https://github.com/avoidwork/madz/pull/400) -- chore: release v1.14.0 [`#397`](https://github.com/avoidwork/madz/pull/397) -- feat: add subAgentMessage tool for sending messages to subAgent processes [`#396`](https://github.com/avoidwork/madz/pull/396) -- docs: add subAgentLog tool documentation [`#395`](https://github.com/avoidwork/madz/pull/395) -- fix: suppress all crontab errors in _readCrontab() for container compatibility [`#394`](https://github.com/avoidwork/madz/pull/394) -- chore: release v1.13.2 [`#393`](https://github.com/avoidwork/madz/pull/393) -- fix: use newline separator for subAgent context instead of ||| marker [`#392`](https://github.com/avoidwork/madz/pull/392) -- chore: add process management and teammate behavior to system prompt [`#390`](https://github.com/avoidwork/madz/pull/390) -- chore: release v1.13.1 [`#385`](https://github.com/avoidwork/madz/pull/385) -- fix: add 300s timeout to scheduler node process [`#384`](https://github.com/avoidwork/madz/pull/384) -- docs: update documentation for subAgent tool and compaction [`#374`](https://github.com/avoidwork/madz/pull/374) -- chore: release v1.13.0 [`#373`](https://github.com/avoidwork/madz/pull/373) -- feat: subagent-tool — add subAgent tool for spawning child-process agents [`#362`](https://github.com/avoidwork/madz/pull/362) -- feat: compaction-tool-session-summarization — semantic session summarization tool [`#361`](https://github.com/avoidwork/madz/pull/361) -- chore: release v1.12.0 [`#357`](https://github.com/avoidwork/madz/pull/357) -- docs: add skill composition directive to system prompt [`#356`](https://github.com/avoidwork/madz/pull/356) -- fix: fix-telemetry-console-span-exporter-import — correct ConsoleSpanExporter import path [`#355`](https://github.com/avoidwork/madz/pull/355) -- fix: fix-yaml-frontmatter-escaping — escape special characters in YAML frontmatter strings [`#353`](https://github.com/avoidwork/madz/pull/353) -- fix: scheduler-audit-fixes — fix audit findings in src/scheduler [`#352`](https://github.com/avoidwork/madz/pull/352) -- feat: fix-yaml-frontmatter-escaping — escape special characters in YAML frontmatter strings [`#346`](https://github.com/avoidwork/madz/pull/346) -- fix: agent-audit-findings — fix streaming response, message type detection, and array iteration [`#345`](https://github.com/avoidwork/madz/pull/345) -- docs: archive pino multistream compatibility change and sync delta spec [`#344`](https://github.com/avoidwork/madz/pull/344) -- feat: fix-pino-multistream-compatibility — migrate from deprecated pino.multistream() to v10 array-based destination API [`#343`](https://github.com/avoidwork/madz/pull/343) -- chore: release v1.11.0 [`#331`](https://github.com/avoidwork/madz/pull/331) -- feat: preserve-conversation-on-interruption — preserve conversation checkpoints on AbortError [`#330`](https://github.com/avoidwork/madz/pull/330) -- chore: release v1.10.0 [`#328`](https://github.com/avoidwork/madz/pull/328) -- feat: optimize TUI streaming performance with LRU parse cache [`#326`](https://github.com/avoidwork/madz/pull/326) -- docs: add Agent Skills Protocol section to system prompt [`#325`](https://github.com/avoidwork/madz/pull/325) -- Revert commits 673bd3b, c9504f4, df79591 [`#324`](https://github.com/avoidwork/madz/pull/324) -- chore: add pipeline execution directive to skill delegation section [`#323`](https://github.com/avoidwork/madz/pull/323) -- docs: refine skill delegation section for conciseness and clarity [`#322`](https://github.com/avoidwork/madz/pull/322) -- docs: add SKILL DELEGATION sections to all skills and system prompt [`#321`](https://github.com/avoidwork/madz/pull/321) -- Revert "fix: fix-insecure-yaml-deserialization — fix insecure YAML deserialization in config loader (#317)" [`#319`](https://github.com/avoidwork/madz/pull/319) -- fix: fix-insecure-yaml-deserialization — fix insecure YAML deserialization in config loader [`#317`](https://github.com/avoidwork/madz/pull/317) -- fix: fix-logger-toctou-and-redundant-streams — Fix logger startup race condition and redundant stream handling [`#316`](https://github.com/avoidwork/madz/pull/316) -- chore: release v1.9.0 [`#315`](https://github.com/avoidwork/madz/pull/315) -- feat: add LLM response caching with conditional tool-aware storage [`#314`](https://github.com/avoidwork/madz/pull/314) -- chore: release v1.8.2 [`#313`](https://github.com/avoidwork/madz/pull/313) -- docs: tighten system prompt for autonomous, decisive execution [`#311`](https://github.com/avoidwork/madz/pull/311) -- chore: release v1.8.1 [`#309`](https://github.com/avoidwork/madz/pull/309) -- fix: replace String().trim() with optional chaining in filesystem and session_search tools [`#308`](https://github.com/avoidwork/madz/pull/308) -- chore: release v1.8.0 [`#307`](https://github.com/avoidwork/madz/pull/307) -- feat: enhance system prompt with audit logging, identity, and structure [`#305`](https://github.com/avoidwork/madz/pull/305) -- docs: add loop prevention guardrails to system prompt [`#304`](https://github.com/avoidwork/madz/pull/304) -- fix: audit filesystem tools — byte-size check, binary skip, depth limit, suggestion scan [`#289`](https://github.com/avoidwork/madz/pull/289) -- fix: ensure stdout is string before trim in execFile results [`#288`](https://github.com/avoidwork/madz/pull/288) -- docs: remove <thinking> block directive from system prompt [`#287`](https://github.com/avoidwork/madz/pull/287) -- chore: release v1.7.5 [`#286`](https://github.com/avoidwork/madz/pull/286) -- docs: clarify response delivery edge case to prevent re-evaluation loops [`#285`](https://github.com/avoidwork/madz/pull/285) -- chore: add ripgrep to Docker image for searchFiles [`#284`](https://github.com/avoidwork/madz/pull/284) -- chore: release v1.7.4 [`#278`](https://github.com/avoidwork/madz/pull/278) -- docs: add TUI blueprint for next-generation terminal interface [`#277`](https://github.com/avoidwork/madz/pull/277) -- chore(deps): bump @opentelemetry/sdk-node [`#270`](https://github.com/avoidwork/madz/pull/270) -- chore(deps): bump oxlint from 1.69.0 to 1.70.0 [`#273`](https://github.com/avoidwork/madz/pull/273) -- chore(deps): bump oxfmt from 0.54.0 to 0.55.0 [`#272`](https://github.com/avoidwork/madz/pull/272) -- docs: add TUI2 IRC-style interface blueprint [`#275`](https://github.com/avoidwork/madz/pull/275) -- chore(deps): bump the langgraph group across 1 directory with 2 updates [`#269`](https://github.com/avoidwork/madz/pull/269) -- fix: correct cursor position on line wrap in input panel [`#274`](https://github.com/avoidwork/madz/pull/274) -- chore(deps): bump ink from 7.0.5 to 7.0.6 [`#271`](https://github.com/avoidwork/madz/pull/271) -- docs: update TUI command format from : to / prefix [`#268`](https://github.com/avoidwork/madz/pull/268) -- docs: sync config defaults and fix tool names in docs [`#267`](https://github.com/avoidwork/madz/pull/267) -- fix: suppress telemetry flush logs in shutdown test [`#264`](https://github.com/avoidwork/madz/pull/264) -- docs: add GitHub issue templates for bug reports and feature requests [`#262`](https://github.com/avoidwork/madz/pull/262) -- chore: release v1.7.3 [`#260`](https://github.com/avoidwork/madz/pull/260) -- fix: reset isCompacting state on new session [`#259`](https://github.com/avoidwork/madz/pull/259) -- chore: release v1.7.2 [`#258`](https://github.com/avoidwork/madz/pull/258) -- fix(tui): abort active stream before processing new message [`#257`](https://github.com/avoidwork/madz/pull/257) -- chore: release v1.7.1 [`#256`](https://github.com/avoidwork/madz/pull/256) -- fix: thread recursionLimit through agent call chain [`#254`](https://github.com/avoidwork/madz/pull/254) -- chore: release v1.7.0 [`#253`](https://github.com/avoidwork/madz/pull/253) -- feat: escape key interrupts streaming instead of quitting [`#252`](https://github.com/avoidwork/madz/pull/252) -- Revert "feat: esc-interrupt-streaming — Allow escape key to interrupt streaming agent (#248)" [`#250`](https://github.com/avoidwork/madz/pull/250) -- feat: esc-interrupt-streaming — Allow escape key to interrupt streaming agent [`#248`](https://github.com/avoidwork/madz/pull/248) -- chore: release v1.6.4 [`#246`](https://github.com/avoidwork/madz/pull/246) -- fix: auto-continue circuit breaker + node timeout [`#244`](https://github.com/avoidwork/madz/pull/244) -- chore: release v1.6.3 [`#243`](https://github.com/avoidwork/madz/pull/243) -- fix: auto-continue on empty streaming response [`#242`](https://github.com/avoidwork/madz/pull/242) -- chore: release v1.6.2 [`#241`](https://github.com/avoidwork/madz/pull/241) -- docs: audit and resolve SYSTEM_PROMPT.md issues [`#240`](https://github.com/avoidwork/madz/pull/240) -- chore: release v1.6.1 [`#239`](https://github.com/avoidwork/madz/pull/239) -- docs: add skills and commands routing section to system prompt [`#238`](https://github.com/avoidwork/madz/pull/238) -- chore: release v1.6.0 [`#237`](https://github.com/avoidwork/madz/pull/237) -- fix: echo user command to TUI chat display and session state [`#236`](https://github.com/avoidwork/madz/pull/236) -- feat: switch to slash command syntax and add skill execution [`#235`](https://github.com/avoidwork/madz/pull/235) -- chore: release v1.5.4 [`#232`](https://github.com/avoidwork/madz/pull/232) -- fix: raise default recursion limit from 30 to 1000 [`#231`](https://github.com/avoidwork/madz/pull/231) -- Delete .pr-body.md [`#228`](https://github.com/avoidwork/madz/pull/228) -- chore: release v1.5.3 [`#227`](https://github.com/avoidwork/madz/pull/227) -- archive: fix-crond-startup-flag — crond daemonization requirement [`#226`](https://github.com/avoidwork/madz/pull/226) -- fix: fix-crond-startup-flag — fix crond startup in Docker entrypoint [`#225`](https://github.com/avoidwork/madz/pull/225) -- chore: release v1.5.2 [`#223`](https://github.com/avoidwork/madz/pull/223) -- docs: add OPENAI_ENCODING documentation and tiktoken encoding reference [`#222`](https://github.com/avoidwork/madz/pull/222) -- fix: tighten status bar emoji spacing and separators [`#221`](https://github.com/avoidwork/madz/pull/221) -- docs: remove table of contents from TUTORIAL.md and OVERVIEW.md [`#220`](https://github.com/avoidwork/madz/pull/220) -- chore: release v1.5.1 [`#219`](https://github.com/avoidwork/madz/pull/219) -- fix(tui): system prompt not loaded in interactive mode [`#218`](https://github.com/avoidwork/madz/pull/218) -- chore: release v1.5.0 [`#217`](https://github.com/avoidwork/madz/pull/217) -- feat: context-window-status — display context size in status bar with compaction indicator [`#215`](https://github.com/avoidwork/madz/pull/215) -- docs: rename OpenSpec change directory and archive core-architecture-spec [`#214`](https://github.com/avoidwork/madz/pull/214) -- chore: archive system-logger-pino change [`#213`](https://github.com/avoidwork/madz/pull/213) -- chore: release v1.4.2 [`#212`](https://github.com/avoidwork/madz/pull/212) -- docs: close process gaps in SYSTEM_PROMPT to prevent agent halting [`#211`](https://github.com/avoidwork/madz/pull/211) -- chore: release v1.4.1 [`#210`](https://github.com/avoidwork/madz/pull/210) -- fix: standardize tool names to camelCase across all factories [`#209`](https://github.com/avoidwork/madz/pull/209) -- docs: add todo purge directive to SYSTEM_PROMPT.md [`#208`](https://github.com/avoidwork/madz/pull/208) -- fix: standardize tool file names to snake_case [`#207`](https://github.com/avoidwork/madz/pull/207) -- docs: document automatic context compaction feature [`#206`](https://github.com/avoidwork/madz/pull/206) -- chore: release v1.4.0 [`#205`](https://github.com/avoidwork/madz/pull/205) -- feat: automatic-context-compaction — recover from LLM context length errors via automatic conversation compaction [`#204`](https://github.com/avoidwork/madz/pull/204) -- chore: bump version to 1.3.7 [`#202`](https://github.com/avoidwork/madz/pull/202) -- feat: add path negation operator to sandbox rules [`#201`](https://github.com/avoidwork/madz/pull/201) -- chore: bump version to 1.3.6 [`#200`](https://github.com/avoidwork/madz/pull/200) -- docs: audit and tighten SYSTEM_PROMPT.md — fix contradictions, add recovery guidance [`#199`](https://github.com/avoidwork/madz/pull/199) -- docs: replace fork() with spawn() across documentation and source [`#198`](https://github.com/avoidwork/madz/pull/198) -- docs: audit and fix documentation inconsistencies in README, FLOWS, TUI_FLOWS [`#197`](https://github.com/avoidwork/madz/pull/197) -- chore: bump version to 1.3.5 [`#196`](https://github.com/avoidwork/madz/pull/196) -- docs: add TUI audit fix proposal (tui-audit-fixes) [`#195`](https://github.com/avoidwork/madz/pull/195) -- docs: fix scheduler documentation, expand TUI commands, add atomicity directive [`#194`](https://github.com/avoidwork/madz/pull/194) -- docs: track config.yaml in git, remove sandbox wildcard path [`#193`](https://github.com/avoidwork/madz/pull/193) -- chore: bump version to 1.3.4 [`#192`](https://github.com/avoidwork/madz/pull/192) -- fix: set HOME env var to /home/madz in Dockerfile [`#191`](https://github.com/avoidwork/madz/pull/191) -- chore: bump version to 1.3.3 [`#189`](https://github.com/avoidwork/madz/pull/189) -- chore: bump version to 1.3.2 [`#188`](https://github.com/avoidwork/madz/pull/188) -- feat: add log cache directory to Dockerfile [`#187`](https://github.com/avoidwork/madz/pull/187) -- Verion bump for docker [`#186`](https://github.com/avoidwork/madz/pull/186) -- chore: update dependencies in package.json [`#185`](https://github.com/avoidwork/madz/pull/185) -- spec: add system-logger-pino change proposal [`#184`](https://github.com/avoidwork/madz/pull/184) -- docs: update memory layer documentation with triple-layer architecture and daily reflection [`#183`](https://github.com/avoidwork/madz/pull/183) -- chore: bump version to 1.2.3 and update changelog [`#182`](https://github.com/avoidwork/madz/pull/182) -- fix: ensure graceful shutdown in non-interactive chat mode [`#181`](https://github.com/avoidwork/madz/pull/181) -- chore: bump version to 1.2.2 and update changelog [`#180`](https://github.com/avoidwork/madz/pull/180) -- feat: persist reflection-daily cron job JSON file on disk [`#179`](https://github.com/avoidwork/madz/pull/179) -- chore: bump version to 1.2.1 and update changelog [`#178`](https://github.com/avoidwork/madz/pull/178) -- feat: auto-create daily reflection cron job on first profile creation [`#177`](https://github.com/avoidwork/madz/pull/177) -- chore: bump version to 1.2.0 and update changelog [`#176`](https://github.com/avoidwork/madz/pull/176) -- feat: add Reflection skill, enhance memory injection, rename cronjob → cronJob [`#175`](https://github.com/avoidwork/madz/pull/175) -- chore: bump version to 1.1.0 and update changelog [`#174`](https://github.com/avoidwork/madz/pull/174) -- feat: optimistic GC with V8 collection on idle [`#173`](https://github.com/avoidwork/madz/pull/173) -- chore: bump version to 1.0.9 and update changelog [`#172`](https://github.com/avoidwork/madz/pull/172) -- feat: restrict todo tool to ASCII-only key and content [`#171`](https://github.com/avoidwork/madz/pull/171) -- feat: tighten completion directive and add stateful execution [`#169`](https://github.com/avoidwork/madz/pull/169) -- fix: correct TUI Ink API mismatches, key handling, and error handling [`#167`](https://github.com/avoidwork/madz/pull/167) -- chore: update dependencies and changelog [`#166`](https://github.com/avoidwork/madz/pull/166) -- feat: sync crontab on init and clean test artifacts [`#165`](https://github.com/avoidwork/madz/pull/165) -- chore: update changelog and lock deps [`#164`](https://github.com/avoidwork/madz/pull/164) -- feat: redesign todo tool with structured API and key-based operations [`#163`](https://github.com/avoidwork/madz/pull/163) -- chore: remove refactor-tui-opentui OpenSpec change artifacts [`#162`](https://github.com/avoidwork/madz/pull/162) -- chore: update CHANGELOG.md with auto-generated release notes [`#161`](https://github.com/avoidwork/madz/pull/161) -- docs: archive publish-npm-bin and sync npm-publish spec [`#160`](https://github.com/avoidwork/madz/pull/160) -- refactor: remove internal scheduler loop, replace CronInstaller with Cron CRUD, wire cronjob tool [`#159`](https://github.com/avoidwork/madz/pull/159) -- feat: rename CronInstaller to Cron with CRUD ops, remove scheduler loop [`#158`](https://github.com/avoidwork/madz/pull/158) -- chore: bump version to 1.0.5 and update CHANGELOG [`#157`](https://github.com/avoidwork/madz/pull/157) -- feat: add panel focus indicator with border highlight [`#156`](https://github.com/avoidwork/madz/pull/156) -- docs: replace fork() with spawn() in system diagram [`#154`](https://github.com/avoidwork/madz/pull/154) -- docs: add getting started tutorial and expand env var table [`#153`](https://github.com/avoidwork/madz/pull/153) -- chore: bump version to 1.0.4 and update CHANGELOG [`#152`](https://github.com/avoidwork/madz/pull/152) -- fix: create user before cache dir in Dockerfile [`#151`](https://github.com/avoidwork/madz/pull/151) -- fix: install cron package and start crond daemon in Docker container [`#150`](https://github.com/avoidwork/madz/pull/150) -- chore(deps): bump oxlint from 1.68.0 to 1.69.0 [`#149`](https://github.com/avoidwork/madz/pull/149) -- chore(deps): bump oxfmt from 0.53.0 to 0.54.0 [`#148`](https://github.com/avoidwork/madz/pull/148) -- chore(deps): bump the langgraph group with 2 updates [`#147`](https://github.com/avoidwork/madz/pull/147) -- chore: rename package to @avoidwork/madz and bump to 1.0.3 [`#146`](https://github.com/avoidwork/madz/pull/146) -- chore: bump version to 1.0.2 [`#144`](https://github.com/avoidwork/madz/pull/144) -- feat: add npm publish bin with CLI distribution [`#142`](https://github.com/avoidwork/madz/pull/142) -- docs: add link to denkerne.ai project website [`#141`](https://github.com/avoidwork/madz/pull/141) -- chore: update CHANGELOG.md with recent release entries [`#140`](https://github.com/avoidwork/madz/pull/140) -- feat: add configurable recursion limit and graceful error handling [`#139`](https://github.com/avoidwork/madz/pull/139) - chore: add CHANGELOG.md with auto-changelog generation [`#138`](https://github.com/avoidwork/madz/pull/138) - feat: include LICENSE file in Docker image [`#137`](https://github.com/avoidwork/madz/pull/137) - docs: blend intro and overview in README.md for a tighter introduction [`#136`](https://github.com/avoidwork/madz/pull/136) @@ -3567,60 +2659,4 @@ Generated by [`auto-changelog`](https://github.com/CookPete/auto-changelog). - feat: implement llm-tui-harness core architecture [`#6`](https://github.com/avoidwork/madz/pull/6) - feat: add LLM TUI harness change with 8 capabilities and 51 tasks [`#5`](https://github.com/avoidwork/madz/pull/5) - chore: stage all untracked files [`#1`](https://github.com/avoidwork/madz/pull/1) -- fix: don't render file picker empty message when filter has no matches (#1464) [`#1412`](https://github.com/avoidwork/madz/issues/1412) -- fix: make file-producing tools config-driven via memory/toolsDir (#1459) [`#1458`](https://github.com/avoidwork/madz/issues/1458) [`#1458`](https://github.com/avoidwork/madz/issues/1458) -- feat: surface 5 config keys read by code but absent from config.yaml (#1449) [`#1445`](https://github.com/avoidwork/madz/issues/1445) [`#1445`](https://github.com/avoidwork/madz/issues/1445) -- fix: clarify tool does not echo question back to user (#1415) [`#1414`](https://github.com/avoidwork/madz/issues/1414) [`#1414`](https://github.com/avoidwork/madz/issues/1414) [`#1414`](https://github.com/avoidwork/madz/issues/1414) -- feat: add dedicated subagent view to TUI (#1371) [`#1360`](https://github.com/avoidwork/madz/issues/1360) [`#1360`](https://github.com/avoidwork/madz/issues/1360) -- feat: add config-driven MCP server tool registration (#1337) [`#1336`](https://github.com/avoidwork/madz/issues/1336) -- feat: add configurable mouse scroll lines option (#1334) [`#1333`](https://github.com/avoidwork/madz/issues/1333) [`#1333`](https://github.com/avoidwork/madz/issues/1333) -- fix: inject decisionConfig into decision tool at invoke time (#1322) [`#1321`](https://github.com/avoidwork/madz/issues/1321) [`#1321`](https://github.com/avoidwork/madz/issues/1321) [`#1321`](https://github.com/avoidwork/madz/issues/1321) -- feat: add mouse selection with clipboard copy to TUI (#1319) [`#1317`](https://github.com/avoidwork/madz/issues/1317) -- fix: exchange Copilot OAuth token for short-lived API bearer (#1315) [`#1314`](https://github.com/avoidwork/madz/issues/1314) [`#1314`](https://github.com/avoidwork/madz/issues/1314) -- fix: copilot provider fails with missing credentials after device flow (#1292) [`#1291`](https://github.com/avoidwork/madz/issues/1291) -- fix: count tool messages in live context window during streaming (#1281) [`#1280`](https://github.com/avoidwork/madz/issues/1280) [`#1280`](https://github.com/avoidwork/madz/issues/1280) -- fix: remove custom tiktoken tokenizer and use model tokenizer (#1277) [`#1275`](https://github.com/avoidwork/madz/issues/1275) [`#1275`](https://github.com/avoidwork/madz/issues/1275) [`#1275`](https://github.com/avoidwork/madz/issues/1275) -- feat: estimate context cost from real checkpointer session (#1267) [`#1266`](https://github.com/avoidwork/madz/issues/1266) [`#1266`](https://github.com/avoidwork/madz/issues/1266) -- feat: add enabled boolean to provider config and copilot block (#1258) [`#1257`](https://github.com/avoidwork/madz/issues/1257) -- fix: handle litellm 400 context window exceeded by compacting and re-sending (#1251) [`#1250`](https://github.com/avoidwork/madz/issues/1250) -- feat: add /compact TUI slash command for manual context compaction (#1247) [`#1246`](https://github.com/avoidwork/madz/issues/1246) [`#1246`](https://github.com/avoidwork/madz/issues/1246) -- feat: add decision tool for structured classification via Ollama (#1244) [`#1243`](https://github.com/avoidwork/madz/issues/1243) [`#1243`](https://github.com/avoidwork/madz/issues/1243) [`#1243`](https://github.com/avoidwork/madz/issues/1243) -- feat: dispatch readImage results to LLM as vision input (#1237) [`#1236`](https://github.com/avoidwork/madz/issues/1236) -- fix: surface subagent prompt-load failure at warn level (#1229) [`#1224`](https://github.com/avoidwork/madz/issues/1224) [`#1224`](https://github.com/avoidwork/madz/issues/1224) [`#1224`](https://github.com/avoidwork/madz/issues/1224) -- fix: anchor frontmatter extraction and use directory name as canonical skill id (#1171) [`#1170`](https://github.com/avoidwork/madz/issues/1170) -- fix: status bar context counter undercounts orchestrator context (#1155) [`#1154`](https://github.com/avoidwork/madz/issues/1154) -- fix: surface subagent tool capabilities to orchestrator (#1152) [`#1151`](https://github.com/avoidwork/madz/issues/1151) [`#1151`](https://github.com/avoidwork/madz/issues/1151) -- feat: configurable summarization thresholds for proactive compaction (#1148) [`#1146`](https://github.com/avoidwork/madz/issues/1146) [`#1146`](https://github.com/avoidwork/madz/issues/1146) -- fix: persist interrupted assistant bubble with reasoning content (#1120) [`#1119`](https://github.com/avoidwork/madz/issues/1119) [`#1119`](https://github.com/avoidwork/madz/issues/1119) [`#1119`](https://github.com/avoidwork/madz/issues/1119) -- feat: run indexCode indexing in a piscina worker pool (#1079) [`#1078`](https://github.com/avoidwork/madz/issues/1078) -- feat: harden subagent prompts to pass audit threshold (#1041) [`#1040`](https://github.com/avoidwork/madz/issues/1040) -- fix: add missing config import in memory tool (#1032) [`#1031`](https://github.com/avoidwork/madz/issues/1031) -- feat: add config option to suppress toolCallDisplay in TUI (#1023) (#1028) [`#1023`](https://github.com/avoidwork/madz/issues/1023) -- feat: eliminate duplicate skills prompt injection, normalize skill path formats (#1003) [`#1002`](https://github.com/avoidwork/madz/issues/1002) -- fix: status bar contextSize counter inaccurate in chat and skill modes (#998) [`#997`](https://github.com/avoidwork/madz/issues/997) -- fix: sanitize colons in model name for harness profile key (#994) (#995) [`#994`](https://github.com/avoidwork/madz/issues/994) -- fix: add tools stream mode for tool lifecycle events (#974) [`#972`](https://github.com/avoidwork/madz/issues/972) -- fix(tui): remove scrollOffset state to eliminate render loop flicker (#915) [`#913`](https://github.com/avoidwork/madz/issues/913) -- fix(tui): auto-scroll not triggering during streaming responses (#910) [`#909`](https://github.com/avoidwork/madz/issues/909) -- chore: restructure src/tools for consistent organizational pattern (#906) [`#904`](https://github.com/avoidwork/madz/issues/904) -- feat: remove renderWindow message limit from TUI message list panel (#901) [`#900`](https://github.com/avoidwork/madz/issues/900) -- fix: add cronJob tool access to the orchestrator (#875) [`#874`](https://github.com/avoidwork/madz/issues/874) -- feat: add presentation creation tool with pptxgenjs (#860) [`#786`](https://github.com/avoidwork/madz/issues/786) [`#786`](https://github.com/avoidwork/madz/issues/786) -- feat: add text, seo, and translate tools (#852) [`#784`](https://github.com/avoidwork/madz/issues/784) [`#784`](https://github.com/avoidwork/madz/issues/784) [`#784`](https://github.com/avoidwork/madz/issues/784) [`#784`](https://github.com/avoidwork/madz/issues/784) [`#784`](https://github.com/avoidwork/madz/issues/784) -- fix: add subAgentsTemperature defaults to config.yaml and README (#848) [`#844`](https://github.com/avoidwork/madz/issues/844) [`#844`](https://github.com/avoidwork/madz/issues/844) [`#844`](https://github.com/avoidwork/madz/issues/844) -- feat: add spreadsheet computation and analysis tool (#818) [`#782`](https://github.com/avoidwork/madz/issues/782) -- feat: add email integration (read, send, manage) (#800) [`#779`](https://github.com/avoidwork/madz/issues/779) [`#779`](https://github.com/avoidwork/madz/issues/779) -- feat: add @-triggered file path autocomplete to TUI input panel (#793) [`#792`](https://github.com/avoidwork/madz/issues/792) -- feat: add file format extraction tools (docx, pptx, xlsx, pdf, etc.) (#770) [`#767`](https://github.com/avoidwork/madz/issues/767) -- fix: restore markdown table rendering by fixing cell delimiter regex (#698) [`#697`](https://github.com/avoidwork/madz/issues/697) -- feat: move config.yaml and index.js into src/ — fixes #630 (#632) [`#630`](https://github.com/avoidwork/madz/issues/630) -- chore: fix sync FS calls in async functions and add debug logging (#622) [`#621`](https://github.com/avoidwork/madz/issues/621) -- feat: fix cron jobs silently ignored due to crond misconfiguration (#533) [`#519`](https://github.com/avoidwork/madz/issues/519) -- feat: add SSH client to Docker container (#451) [`#450`](https://github.com/avoidwork/madz/issues/450) -- fix: interrupt tool call 400 error — clean up assistant tool-call message on interrupt (#446) [`#444`](https://github.com/avoidwork/madz/issues/444) -- fix(tui): abort active stream before processing new message (#257) [`#245`](https://github.com/avoidwork/madz/issues/245) -- fix: thread recursionLimit through agent call chain (#254) [`#251`](https://github.com/avoidwork/madz/issues/251) -- fix: raise default recursion limit from 30 to 1000 (#231) [`#229`](https://github.com/avoidwork/madz/issues/229) -- initial commit [`7522505`](https://github.com/avoidwork/madz/commit/7522505332b392a8957b9352fb75bca676b39000) -- feat: add browser automation tool OpenSpec proposal [`cb39a19`](https://github.com/avoidwork/madz/commit/cb39a190bf2c4c0546e0203fb38eefa36e3ce069) - Initial commit [`a184a67`](https://github.com/avoidwork/madz/commit/a184a6759d6fae47062869bc32fffb404958114c) diff --git a/package-lock.json b/package-lock.json index 22a4129b3..2bc5c8e66 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "@avoidwork/madz", - "version": "1.129.1", + "version": "1.129.2", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "@avoidwork/madz", - "version": "1.129.1", + "version": "1.129.2", "hasInstallScript": true, "license": "BSD-3-Clause", "dependencies": { diff --git a/package.json b/package.json index 5c6969eef..16b4c499c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "@avoidwork/madz", - "version": "1.129.1", + "version": "1.129.2", "description": "A personality-driven AI harness channeling Mads Mikkelsen's cinematic soul.", "keywords": [ "cli",