Release History

Changelog.

Changelog

All notable changes to this project will be documented in this file. Dates are displayed in UTC.

Generated by auto-changelog.

1.58.0

  • feat: remove renderWindow message limit from TUI message list panel #901
  • feat: remove renderWindow message limit from TUI message list panel (#901) #900

1.57.3

28 August 2026

  • chore: release v1.57.3 #899
  • chore: optimize Dockerfile with multi-stage cargo-audit build #898
  • chore: prepare for version bump #897

1.57.2

28 August 2026

  • chore: release v1.57.2 #896
  • fix: resolve TUI flicker on keystrokes and spinner updates #895
  • fix: TUI streaming auto-scroll broken and performance issues #893

1.57.1

27 August 2026

  • chore: bump version to 1.57.1 #891

1.57.0

27 August 2026

  • fix: download vault from HashiCorp releases instead of Alpine community repo #890
  • chore: release v1.57.0 #889
  • feat: add vault CLI to Docker image #888

1.56.0

27 August 2026

  • chore: release v1.56.0 #886
  • chore: archive all completed OpenSpec changes (5 changes) #885
  • feat: add polyglot dev tools to Docker container #884

1.55.0

26 August 2026

  • chore: release v1.55.0 #880
  • feat: add chromium to Dockerfile #879

1.54.0

26 August 2026

  • chore: release v1.54.0 #877
  • feat: add structured data and API interaction tools #869

1.53.1

25 August 2026

  • chore: release v1.53.1 #876
  • fix: add cronJob tool access to the orchestrator #875
  • fix: add cronJob tool access to the orchestrator (#875) #874

1.53.0

25 August 2026

  • chore: release v1.53.0 #873
  • feat: add tzdata to Docker container for timezone resolution #872

1.51.1

24 August 2026

  • chore: release v1.52.0 #867
  • chore(deps): bump pptxgenjs from 3.12.0 to 4.0.1 #864
  • Revert "feat: add structured data and API interaction tools (#865)" #866
  • feat: add structured data and API interaction tools #865
  • chore(deps): bump deepagents from 1.13.0 to 1.13.1 #863

1.51.0

24 August 2026

  • chore: release v1.51.0 #862
  • feat: add presentation creation tool with pptxgenjs #860
  • feat: add presentation creation tool with pptxgenjs (#860) #786 #786

1.50.1

23 August 2026

  • chore: release v1.50.1 #859
  • feat: make render window configurable via tui.renderWindow #858

1.50.0

23 August 2026

  • chore: release v1.50.0 #855
  • feat: add text, seo, and translate tools #852
  • feat: add name.com API tool with username/token auth #854
  • feat: add text, seo, and translate tools (#852) #784 #784 #784 #784 #784

1.49.2

23 August 2026

  • chore: release v1.49.2 #851
  • fix: default process tool action to 'start' when only command is provided #850

1.49.1

22 August 2026

  • chore: release v1.49.1 #849
  • fix: add subAgentsTemperature defaults to config.yaml and README #848
  • fix: add subAgentsTemperature defaults to config.yaml and README (#848) #844 #844 #844

1.49.0

22 August 2026

  • chore: release v1.49.0 #847
  • fix: escape -- flags in process tool commands #846
  • feat: add subAgentsTemperature config for per-agent temperature tuning #844

1.48.1

22 August 2026

  • chore: release v1.48.1 #842
  • docs: restore original Identity section prose in SYSTEM_PROMPT.md #841

1.48.0

22 August 2026

  • chore: release v1.48.0 #840
  • feat: merge shell and process tools into unified process tool #838

1.47.2

22 August 2026

  • chore: release v1.47.2 #837
  • fix(tui): remove nonexistent setInterrupted calls causing unhandled rejection #836
  • Revert "fix: add missing useState declaration for interrupted in handleInterrupt (#834)" #835
  • fix: add missing useState declaration for interrupted in handleInterrupt #834

1.47.1

22 August 2026

  • chore: release v1.47.1 #830
  • fix: use setInputText instead of setInputValue in handleInterrupt #829

1.47.0

21 August 2026

  • chore: release v1.47.0 #826
  • feat: add configurable skill-to-agent mapping via config.yaml #825
  • feat: add ESC interrupt/skip behavior in TUI #821
  • feat: add structured data and API tools (OpenSpec proposal) #823
  • feat: add presentation creation tool (OpenSpec proposal) #822

1.46.0

21 August 2026

  • chore: release v1.46.0 #820
  • chore(deps): bump dependencies to latest versions #819
  • feat: add spreadsheet computation and analysis tool #818
  • feat: add document creation/writer tools #817
  • feat: add PDF generation and manipulation tools #815
  • feat: add calendar management tools (read, create, schedule) #813
  • feat: add spreadsheet computation and analysis tool (#818) #782

1.45.1

18 August 2026

  • chore: release v1.45.1 #812
  • chore(deps): bump oxlint from 1.77.0 to 1.78.0 #805
  • chore(deps): bump cron-parser from 5.7.0 to 5.10.0 #806
  • chore(deps): bump js-yaml from 5.2.3 to 5.3.0 #807
  • chore(deps): bump ansi-regex from 6.2.2 to 6.3.0 #809
  • chore(deps): bump oxfmt from 0.62.0 to 0.63.0 #810
  • chore(deps): bump adm-zip from 0.5.18 to 0.6.0 #811
  • fix: replace sessionId with sessionState.getSessionId() in saveSession calls #803
  • chore(deps): bump deepagents from 1.12.2 to 1.12.4 #808
  • chore(deps): bump the langgraph group with 2 updates #804

1.45.0

17 August 2026

  • chore: release v1.45.0 #802
  • fix: remove writeMemoryFile from session handling #801
  • feat: add email integration (read, send, manage) #800
  • Revert "feat: add @-triggered file path autocomplete to TUI input panel (#798)" #799
  • feat: add @-triggered file path autocomplete to TUI input panel #798
  • feat: add email integration (read, send, manage) (#800) #779 #779

1.44.3

14 August 2026

  • chore: release v1.44.3 #797
  • Revert "feat: add @-triggered file path autocomplete to TUI input panel (#793)" #795
  • refactor: remove grep and ls from agent tool sets and harness excludedTools #794
  • feat: add @-triggered file path autocomplete to TUI input panel #793
  • feat: add @-triggered file path autocomplete to TUI input panel (#793) #792

1.44.2

12 August 2026

  • chore: release v1.44.2 #791
  • fix: remove dead tool references (skillView, skillsList) from prompt files #790

1.44.1

12 August 2026

  • chore: release v1.44.1 #776
  • refactor: replace custom LRUCache with tiny-lru #775

1.44.0

12 August 2026

  • chore: release v1.44.0 #774
  • fix: persist session before switching to new session #773
  • fix: remove DEFAULT_MAX_RESULTS cap from reflection tool #772
  • feat: add file format extraction tools (docx, pptx, xlsx, pdf, etc.) #770
  • fix: add .worktrees/ to .gitignore #771
  • feat: add reflection tool with configurable ignore patterns #769
  • feat: add file format extraction tools (docx, pptx, xlsx, pdf, etc.) (#770) #767

1.43.0

11 August 2026

  • docs: add OpenSpec change for renaming system-skills to .skills/ #766
  • docs: update README.md skill scan paths to .skills/ #765
  • chore: release v1.43.0 #764
  • feat: rename system-skills directory to .skills/ #763

1.42.7

10 August 2026

  • chore: release v1.42.7 #760
  • docs: refine system prompt — add baseline voice, tighten tool-call rules, add graceful closure #759

1.42.6

10 August 2026

  • chore: release v1.42.6 #758
  • fix: tighten SYSTEM_PROMPT tone, refusal, cutoff; restore Identity prose #757

1.42.5

10 August 2026

  • chore: release v1.42.5 #756
  • docs: update SYSTEM_PROMPT.md with 12 improvements #755

1.42.4

10 August 2026

  • chore: release v1.42.4 #754
  • refactor: apply 7 OpenSpec changes across all subsystems #753
  • chore: add OpenSpec for TUI redundant re-export cleanup #752
  • chore: add OpenSpec for shell/process tool split #751
  • chore: add OpenSpec for session barrel cleanup #750
  • chore: add OpenSpec for memory file rename #749
  • chore: add OpenSpec for config schemas restructuring #748
  • chore: add OpenSpec for agent definitions refactoring #747

1.42.3

9 August 2026

  • chore: release v1.42.3 #736
  • fix: remove unnecessary separator from status bar #735

1.42.2

9 August 2026

  • chore: release v1.42.2 #734
  • docs: fix reflection skill audit issues and add shell example #733

1.42.1

9 August 2026

  • chore: release v1.42.1 #732
  • fix(tui): unify system and user message bubble styling #731

1.42.0

9 August 2026

  • chore: bump version to 1.42.0 #730
  • feat(tui): replace status bar indicator with spinner animation #729

1.41.2

9 August 2026

  • chore: release v1.42.0 #728
  • docs: add tool call discipline rules to system prompt #727
  • chore: remove dead skillsList and skillView tools #726
  • docs: remove npm global install option from tutorial #725

1.41.1

9 August 2026

  • chore: release v1.41.1 #724
  • chore: darken status bar background to match user message bubble #723
  • fix: await skillRegistry.discover() in deepAgents and skills tools #722
  • docs: fix system prompt contradictions and suppress deepagents memory middleware #721
  • fix(tui): add gap between bubble header and content #720
  • fix(tui): make message bubbles 100% width instead of 90% max-width #719
  • fix(tui): render system message content in orange and preserve conversation on errors #718
  • chore(openspec): archive 2026-08-08-fix-markdown-tables-rendering change #717
  • fix(tui): focus-aware key routing and streaming auto-scroll #713
  • fix(tui): reduce message list redraws and fix thinking block visibility #710

1.41.0

8 August 2026

  • chore: bump to v1.41.0 #709
  • feat: add tool schema validation and caching directive to system prompt #708
  • feat: add webSearch and webExtract to coding agent tools #706

1.40.0

8 August 2026

  • chore: bump version to 1.40.0 #704
  • feat: remove executeCode tool and posix dependency #703
  • chore(deps): bump all dependencies to latest versions #701

1.39.0

8 August 2026

  • chore: release v1.39.0 #700
  • fix(tui): restore markdown table rendering with correct delimiter parsing #699
  • fix: restore markdown table rendering by fixing cell delimiter regex #698
  • feat: replace marked-terminal with custom terminal renderer #696
  • chore(deps): bump deepagents from 1.11.1 to 1.12.1 #689
  • fix: restore markdown table rendering by fixing cell delimiter regex (#698) #697

1.38.18

6 August 2026

  • chore: release v1.38.18 #693
  • fix(tui): add missing logger import in app.js #692

1.38.17

3 August 2026

  • chore: release v1.38.17 #688
  • fix: write .env.cron on startup and source in crontab entries #687

1.38.16

3 August 2026

  • chore: release v1.38.16 #685
  • fix: replace sync fs calls in async contexts and silent catch blocks #684

1.38.15

2 August 2026

  • chore: release v1.38.15 #682
  • fix: inherit environment variables in LocalShellBackend #681

1.38.14

2 August 2026

  • chore: release v1.38.14 #680
  • fix: destructure stdout in Cron._readCrontab() #679

1.38.12

2 August 2026

  • chore: release v1.38.12 #678
  • fix: exclude 'execute' tool from sub-agent tool set #677

1.38.11

2 August 2026

  • chore: release v1.38.11 #676
  • fix: use LocalShellBackend for core backend to satisfy SandboxBackendProtocol #675
  • fix: exempt shell tool from permission gating in buildToolConfig #674
  • fix(scheduler): restore context loading for skill-based runNow entries #672
  • fix: load scheduler jobs from disk JSON files at startup #671

1.38.10

1 August 2026

  • chore: release v1.38.10 #670
  • fix: correct agent prompts, tool lists, and tests #669
  • fix: migrate cron module to async API and merge duplicate imports #668

1.38.9

1 August 2026

  • chore: release v1.38.9 #667
  • fix(scheduler): ensure reflection-daily job file exists on disk #666

1.38.8

1 August 2026

  • chore: release v1.38.8 #665
  • fix: remove manual keystroke handling from onboarding input #664

1.38.7

1 August 2026

  • chore: release v1.38.7 #662
  • fix: update Dockerfile profile script to use root index.js path #661

1.38.6

1 August 2026

  • chore: release v1.38.6 #660
  • refactor: restructure project layout and scheduler setup #659

1.38.5

31 July 2026

  • chore: release v1.38.5 #658
  • feat: add auto-scheduling for scheduler module #657
  • docs: add cwd restriction rule to system prompt #656

1.38.4

31 July 2026

  • chore: release v1.38.4 #655
  • fix: unify cron job commands and remove redundant path handling #654

1.38.3

27 July 2026

  • chore: release v1.38.3 #652
  • fix: use absolute paths for skill locations in getSkillPathsForAgent #651
  • chore(deps): bump oxlint from 1.74.0 to 1.76.0 #650
  • chore(deps): bump oxfmt from 0.59.0 to 0.61.0 #646
  • chore(deps): bump yargs from 18.0.0 to 18.1.0 #647
  • chore(deps): bump @opentelemetry/sdk-node in the opentelemetry group #645
  • chore(deps): bump js-yaml from 5.2.1 to 5.2.2 #648

1.38.2

27 July 2026

  • chore: bump version to 1.38.2 (patch correction) #644
  • feat: update memory, session, skills, and scheduler modules #643

1.38.1

26 July 2026

  • chore: release v1.38.1 #642
  • docs: remove rule 34 from SYSTEM_PROMPT.md #641
  • Revert shell tool changes to eliminate deepagents conflict #640

1.38.0

26 July 2026

  • chore: release v1.38.0 #638
  • feat: upgrade backends to LocalShellBackend and ensure dirs exist #636
  • fix: remove shell tool to eliminate deepagents conflict #635
  • feat: move config.yaml and index.js into src/ — fixes #630 #632
  • fix(shell): add explicit cwd to spawn calls #631
  • feat: move config.yaml and index.js into src/ — fixes #630 (#632) #630

1.37.4

26 July 2026

  • chore: release v1.37.4 #629
  • fix: DMZ backend should use /app/tmp instead of /tmp to avoid permission issues #628

1.37.3

25 July 2026

  • chore: release v1.37.3 #626
  • fix: refactor path handling to use relative paths with optional cwd #625

1.37.2

25 July 2026

  • chore: release v1.37.2 #623
  • chore: fix sync FS calls in async functions and add debug logging #622
  • chore: fix sync FS calls in async functions and add debug logging (#622) #621

1.37.1

25 July 2026

  • chore: release v1.37.1 #620
  • fix: create log directory in Dockerfile for cron log persistence #619
  • fix: route dmzBackend to /tmp instead of / to prevent context leakage #618
  • fix(dmz): enable virtualMode to sandbox filesystem access #617

1.37.0

24 July 2026

  • chore: release v1.37.0 #616
  • feat: add skills-to-agent mapping injection into orchestrator prompt #615
  • fix: correct config loader import path in contextBackend.js #614
  • fix: restructure backends into dedicated directory #613

1.36.1

24 July 2026

  • chore: release v1.36.1 #612
  • refactor: convert skill paths to relative paths in registry #611

1.36.0

24 July 2026

  • chore: release v1.36.0 #610
  • fix: make cron log path configurable via scheduler config #609
  • docs: update openspec/config.yaml with full project context #605
  • feat: wire up streamEvents and add events array to message model #603

1.35.2

21 July 2026

  • chore: release v1.35.2 #598
  • docs: update SKILL.md and SYSTEM_PROMPT.md #597

1.35.1

21 July 2026

  • chore: release v1.35.1 #596
  • feat: update js-yaml to 5.2.1 with named exports migration #594

1.35.0

20 July 2026

  • chore: release v1.35.0 #593
  • feat: replace input panel with ink-text-input component #592
  • chore(deps): bump oxfmt from 0.58.0 to 0.59.0 #590
  • chore(deps): bump oxlint from 1.73.0 to 1.74.0 #587
  • chore(actions): bump actions/setup-node from 6 to 7 #585
  • chore(deps): bump deepagents from 1.10.8 to 1.11.1 #588
  • chore(deps): bump ink from 7.1.0 to 7.1.1 #589
  • chore(deps): bump @langchain/langgraph in the langgraph group #586

1.34.1

20 July 2026

  • chore: release v1.34.1 #584

1.34.0

20 July 2026

  • chore: regenerate CHANGELOG.md #583
  • fix(tui): correct scroll direction in messageList scrollBy #582
  • chore: update changelog for 1.34.0 #581
  • fix(tui): use functional setState in scrollBy to avoid stale closure #580
  • fix(tui): replace scrollBy calls with MessageList imperative API #579
  • chore: release v1.34.0 #578
  • fix(tui): migrate to ControlledScrollView with onContentHeightChange #577
  • docs: add agent routing rule for skills with metadata.agent #576
  • feat: add coding agent with tool classifications and skill filtering #575

1.33.0

19 July 2026

  • chore: release v1.33.0 #574
  • feat: add /exit as alias for /quit #573

1.32.2

19 July 2026

  • chore: release v1.32.2 #570
  • fix: map subagent tool names to instances in createSubagentDefinitions #569

1.32.1

19 July 2026

  • chore: release v1.32.1 #568
  • docs: add subagent guidance and relax task tool restriction #567

1.32.0

19 July 2026

  • chore: release v1.32.0 #566
  • feat: create subagent definitions for deepagents library #565

1.31.0

18 July 2026

  • chore: release v1.31.0 #563
  • feat: add ink-spinner to assistant response bubble #562
  • chore: normalize YAML frontmatter in OpenSpec skill files #561

1.30.1

18 July 2026

  • chore: bump version to 1.30.1 #559
  • fix: webSearch now honors SEARXNG_URL config #558

1.30.0

18 July 2026

  • chore: release v1.30.0 #556
  • feat: replace ref-based messages with component-based message bubbles #555
  • chore(deps): bump oxfmt from 0.57.0 to 0.58.0 #550
  • chore(deps): bump deepagents from 1.10.5 to 1.10.8 #552
  • chore(deps): bump cron-parser from 5.6.1 to 5.6.2 #549
  • chore(deps): bump @langchain/openai in the langgraph group #548
  • chore: remove trailing slashes from .gitignore entries #547
  • chore(deps): bump oxlint from 1.71.0 to 1.72.0 #540
  • chore(deps): bump oxfmt from 0.56.0 to 0.57.0 #539
  • chore(deps): bump @opentelemetry/sdk-node in the opentelemetry group #537

1.29.1

6 July 2026

  • chore: bump version to 1.29.1 (patch - maintenance release) #544
  • chore: remove duplicate tools superseded by deepagents #543
  • docs: add edit_file and write_todos to ignored tools in system prompt #542

1.29.0

5 July 2026

  • chore: release v1.29.0 #534
  • feat: fix cron jobs silently ignored due to crond misconfiguration #533
  • feat: fix cron jobs silently ignored due to crond misconfiguration (#533) #519

1.28.0

5 July 2026

  • chore: release v1.28.0 #532
  • fix: rename tools to camelCase, convert to singletons, add permissions #531
  • docs: rewrite CODING.md to match SYSTEM_PROMPT structure #530
  • feat: replace terminal tool with shell tool #529
  • docs: add rule to keep skill execution inline within same agent #528
  • docs: restructure system prompt into rules and forbidden patterns #527

1.27.0

4 July 2026

  • chore: release v1.27.0 #526
  • fix: remove tool filtering in deepAgents orchestrator #525
  • feat: categorize skills by metadata.agent field from frontmatter #524

1.26.0

3 July 2026

  • chore: release v1.26.0 #523
  • feat: split filesystem backend into core and DMZ backends #522
  • docs: rename CODE_AGENT.md to CODING.md and update coding references #521
  • fix: remove unused cwd parameter from createCoreBackend #520
  • docs: update OVERVIEW.md architecture diagram #518

1.25.0

3 July 2026

  • chore: release v1.25.0 #517
  • fix: reclassify tool access levels in TOOL_CLASSIFICATIONS #516
  • feat: classify and assign tools/skills to orchestrator vs subagents #513

1.24.1

3 July 2026

  • chore: release v1.24.1 #515
  • docs: add conversation start rule to always check date tool #514

1.24.0

2 July 2026

  • chore: release v1.24.0 #509
  • chore: release v1.23.1 #508
  • refactor(tui): consolidate streaming handlers in app.js #504
  • refactor: replace LangGraph ReAct agent with Deep Agents architecture #503

1.23.0

1 July 2026

  • chore: release v1.23.0 #499
  • feat: delete loadMemories pipeline — remove duplicate memory loading #498
  • feat: prioritize profile and ephemeral context in loadContext #496

1.22.3

30 June 2026

  • chore: release v1.22.3 #491
  • fix: refine system prompt for determinism and clarity #490
  • fix: audit system prompt, remove contradictions, add computational efficiency section #489
  • Revert "refactor: flatten providers config to use type as active provider selector (#485)" #487
  • refactor: flatten providers config to use type as active provider selector #485

1.22.2

29 June 2026

  • chore: release v1.22.2 #482
  • fix: restore corrupted JSDoc and function signature in subAgent.js #481
  • chore(deps): bump the langgraph group with 2 updates #477
  • chore(deps): bump cron-parser from 5.6.0 to 5.6.1 #479
  • docs: update project documentation and PR template #476

1.22.1

29 June 2026

  • chore: bump version to 1.22.1 #474
  • fix: use promisify(execFile) in searchFiles to fix trim error #472

1.22.0

28 June 2026

  • chore: release v1.22.0 #466
  • feat: React agent regex false positives, dead code, and test gaps #464

1.21.0

27 June 2026

  • chore: release v1.21.0 #462
  • fix: remove corrupted final line from README.md #461
  • feat: add subAgent temperature configuration via config.yaml #460

1.20.0

27 June 2026

  • fix: add subAgent flag to cached config #459
  • chore: bump version to 1.20.0 #458
  • feat: enforce cwd and track PIDs in subAgent process delegation #456

1.19.0

26 June 2026

  • chore: bump version to 1.18.3 #454
  • feat: add github-cli to Dockerfile as explicit dependency #453
  • feat: add SSH client to Docker container #451
  • fix: interrupt tool call 400 error — clean up assistant tool-call message on interrupt #446
  • chore: release v1.18.2 #443
  • feat: add SSH client to Docker container (#451) #450
  • fix: interrupt tool call 400 error — clean up assistant tool-call message on interrupt (#446) #444

1.18.2

24 June 2026

  • fix: remove MADZ_SUBAGENT_TIMEOUT and MADZ_SESSION_ID dead code from subAgent #442
  • chore: release v1.18.2 c17d3df

1.18.1

23 June 2026

  • chore: release v1.18.1 #438
  • fix: searchFiles ReferenceError on stdout?.trim() #437
  • chore(deps): bump ink from 7.0.6 to 7.1.0 #430
  • chore(deps): bump oxfmt from 0.55.0 to 0.56.0 #431
  • chore(deps): bump cron-parser from 5.5.0 to 5.6.0 #429
  • chore(deps): bump oxlint from 1.70.0 to 1.71.0 #428
  • chore(deps): bump tiny-lru from 12.0.0 to 13.0.0 #427
  • chore(deps): bump the langgraph group across 1 directory with 2 updates #425
  • chore(actions): bump actions/checkout from 6 to 7 #424
  • chore: release v1.18.0 #434

1.18.0

22 June 2026

  • feat: add turn hash tracking for loop detection #433
  • chore: release v1.18.0 e123c40

1.17.0

22 June 2026

  • chore: release v1.17.0 #432
  • feat: enable streaming mode for non-TUI CLI invocations #423

1.16.0

22 June 2026

  • chore: release v1.16.0 #422
  • feat: add streaming loop detection with sentence sampling #421

1.15.2

22 June 2026

  • chore: bump version to 1.15.2 #417
  • fix: add system-skills directory to prevent reflection skill collision with user mounts #416
  • feat: preserve ToolMessage instances through conversation compaction #414
  • Revert "feat: config audit fixes — error handling, state divergence, dead code, input validation (#409)" #413
  • feat: config audit fixes — error handling, state divergence, dead code, input validation #409

1.15.1

22 June 2026

  • chore: bump version to 1.15.1 #412
  • fix: replace Node.js spawn timeout with system timeout command #411

1.15.0

22 June 2026

  • chore: release v1.15.0 #408
  • feat: subagent-session-id-logging — use session ID instead of PID for subAgent logging #400

1.14.0

21 June 2026

  • chore: release v1.14.0 #397
  • feat: add subAgentMessage tool for sending messages to subAgent processes #396
  • docs: add subAgentLog tool documentation #395
  • fix: suppress all crontab errors in _readCrontab() for container compatibility #394

1.13.2

21 June 2026

  • chore: release v1.13.2 #393
  • fix: use newline separator for subAgent context instead of ||| marker #392
  • chore: add process management and teammate behavior to system prompt #390

1.13.1

21 June 2026

  • chore: release v1.13.1 #385
  • fix: add 300s timeout to scheduler node process #384
  • docs: update documentation for subAgent tool and compaction #374
  • chore: release v1.13.0 #373

1.13.0

21 June 2026

  • feat: subagent-tool — add subAgent tool for spawning child-process agents #362
  • feat: compaction-tool-session-summarization — semantic session summarization tool #361
  • chore: release v1.13.0 133e0a9

1.12.0

21 June 2026

  • chore: release v1.12.0 #357
  • docs: add skill composition directive to system prompt #356
  • fix: fix-telemetry-console-span-exporter-import — correct ConsoleSpanExporter import path #355
  • fix: fix-yaml-frontmatter-escaping — escape special characters in YAML frontmatter strings #353
  • fix: scheduler-audit-fixes — fix audit findings in src/scheduler #352
  • feat: fix-yaml-frontmatter-escaping — escape special characters in YAML frontmatter strings #346
  • fix: agent-audit-findings — fix streaming response, message type detection, and array iteration #345
  • docs: archive pino multistream compatibility change and sync delta spec #344
  • feat: fix-pino-multistream-compatibility — migrate from deprecated pino.multistream() to v10 array-based destination API #343

1.11.0

20 June 2026

  • chore: release v1.11.0 #331
  • feat: preserve-conversation-on-interruption — preserve conversation checkpoints on AbortError #330

1.10.0

20 June 2026

  • chore: release v1.10.0 #328
  • feat: optimize TUI streaming performance with LRU parse cache #326
  • docs: add Agent Skills Protocol section to system prompt #325
  • Revert commits 673bd3b, c9504f4, df79591 #324
  • chore: add pipeline execution directive to skill delegation section #323
  • docs: refine skill delegation section for conciseness and clarity #322
  • docs: add SKILL DELEGATION sections to all skills and system prompt #321
  • Revert "fix: fix-insecure-yaml-deserialization — fix insecure YAML deserialization in config loader (#317)" #319
  • fix: fix-insecure-yaml-deserialization — fix insecure YAML deserialization in config loader #317
  • fix: fix-logger-toctou-and-redundant-streams — Fix logger startup race condition and redundant stream handling #316

1.9.0

18 June 2026

  • chore: release v1.9.0 #315
  • feat: add LLM response caching with conditional tool-aware storage #314

1.8.2

18 June 2026

  • chore: release v1.8.2 #313
  • docs: tighten system prompt for autonomous, decisive execution #311

1.8.1

18 June 2026

  • chore: release v1.8.1 #309
  • fix: replace String().trim() with optional chaining in filesystem and session_search tools #308

1.8.0

17 June 2026

  • chore: release v1.8.0 #307
  • feat: enhance system prompt with audit logging, identity, and structure #305
  • docs: add loop prevention guardrails to system prompt #304
  • fix: audit filesystem tools — byte-size check, binary skip, depth limit, suggestion scan #289
  • fix: ensure stdout is string before trim in execFile results #288
  • docs: remove <thinking> block directive from system prompt #287

1.7.5

17 June 2026

  • chore: release v1.7.5 #286
  • docs: clarify response delivery edge case to prevent re-evaluation loops #285
  • chore: add ripgrep to Docker image for searchFiles #284

1.7.4

15 June 2026

  • chore: release v1.7.4 #278
  • docs: add TUI blueprint for next-generation terminal interface #277
  • chore(deps): bump @opentelemetry/sdk-node #270
  • chore(deps): bump oxlint from 1.69.0 to 1.70.0 #273
  • chore(deps): bump oxfmt from 0.54.0 to 0.55.0 #272
  • docs: add TUI2 IRC-style interface blueprint #275
  • chore(deps): bump the langgraph group across 1 directory with 2 updates #269
  • fix: correct cursor position on line wrap in input panel #274
  • chore(deps): bump ink from 7.0.5 to 7.0.6 #271
  • docs: update TUI command format from : to / prefix #268
  • docs: sync config defaults and fix tool names in docs #267
  • fix: suppress telemetry flush logs in shutdown test #264
  • docs: add GitHub issue templates for bug reports and feature requests #262

1.7.3

14 June 2026

  • chore: release v1.7.3 #260
  • fix: reset isCompacting state on new session #259

1.7.2

14 June 2026

  • chore: release v1.7.2 #258
  • fix(tui): abort active stream before processing new message #257
  • fix(tui): abort active stream before processing new message (#257) #245

1.7.1

14 June 2026

  • chore: release v1.7.1 #256
  • fix: thread recursionLimit through agent call chain #254
  • fix: thread recursionLimit through agent call chain (#254) #251

1.7.0

14 June 2026

  • chore: release v1.7.0 #253
  • feat: escape key interrupts streaming instead of quitting #252
  • Revert "feat: esc-interrupt-streaming — Allow escape key to interrupt streaming agent (#248)" #250
  • feat: esc-interrupt-streaming — Allow escape key to interrupt streaming agent #248

1.6.4

14 June 2026

  • chore: release v1.6.4 #246
  • fix: auto-continue circuit breaker + node timeout #244

1.6.3

14 June 2026

  • chore: release v1.6.3 #243
  • fix: auto-continue on empty streaming response #242

1.6.2

14 June 2026

  • chore: release v1.6.2 #241
  • docs: audit and resolve SYSTEM_PROMPT.md issues #240
  • chore: release v1.6.1 #239
  • docs: add skills and commands routing section to system prompt #238

1.6.0

14 June 2026

  • chore: release v1.6.0 #237
  • fix: echo user command to TUI chat display and session state #236
  • feat: switch to slash command syntax and add skill execution #235

1.5.4

14 June 2026

  • chore: release v1.5.4 #232
  • fix: raise default recursion limit from 30 to 1000 #231
  • Delete .pr-body.md #228
  • fix: raise default recursion limit from 30 to 1000 (#231) #229

1.5.3

14 June 2026

  • chore: release v1.5.3 #227
  • archive: fix-crond-startup-flag — crond daemonization requirement #226
  • fix: fix-crond-startup-flag — fix crond startup in Docker entrypoint #225

1.5.2

14 June 2026

  • chore: release v1.5.2 #223
  • docs: add OPENAI_ENCODING documentation and tiktoken encoding reference #222
  • fix: tighten status bar emoji spacing and separators #221
  • docs: remove table of contents from TUTORIAL.md and OVERVIEW.md #220

1.5.1

13 June 2026

  • chore: release v1.5.1 #219
  • fix(tui): system prompt not loaded in interactive mode #218

1.5.0

13 June 2026

  • chore: release v1.5.0 #217
  • feat: context-window-status — display context size in status bar with compaction indicator #215
  • docs: rename OpenSpec change directory and archive core-architecture-spec #214
  • chore: archive system-logger-pino change #213

1.4.2

13 June 2026

  • chore: release v1.4.2 #212
  • docs: close process gaps in SYSTEM_PROMPT to prevent agent halting #211

1.4.1

13 June 2026

  • chore: release v1.4.1 #210
  • fix: standardize tool names to camelCase across all factories #209
  • docs: add todo purge directive to SYSTEM_PROMPT.md #208
  • fix: standardize tool file names to snake_case #207
  • docs: document automatic context compaction feature #206
  • chore: release v1.4.0 #205

1.4.0

13 June 2026

  • feat: automatic-context-compaction — recover from LLM context length errors via automatic conversation compaction #204
  • chore: release v1.4.0 2cdc437

1.3.7

12 June 2026

  • chore: bump version to 1.3.7 #202
  • feat: add path negation operator to sandbox rules #201

1.3.6

12 June 2026

  • chore: bump version to 1.3.6 #200
  • docs: audit and tighten SYSTEM_PROMPT.md — fix contradictions, add recovery guidance #199
  • docs: replace fork() with spawn() across documentation and source #198
  • docs: audit and fix documentation inconsistencies in README, FLOWS, TUI_FLOWS #197

1.3.5

12 June 2026

  • chore: bump version to 1.3.5 #196
  • docs: add TUI audit fix proposal (tui-audit-fixes) #195
  • docs: fix scheduler documentation, expand TUI commands, add atomicity directive #194
  • docs: track config.yaml in git, remove sandbox wildcard path #193
  • chore: bump version to 1.3.4 #192
  • fix: set HOME env var to /home/madz in Dockerfile #191

1.3.3

12 June 2026

  • chore: bump version to 1.3.3 #189

1.3.2

12 June 2026

  • chore: bump version to 1.3.2 #188
  • feat: add log cache directory to Dockerfile #187

1.3.1

12 June 2026

  • Verion bump for docker #186

1.3.0

12 June 2026

  • chore: update dependencies in package.json #185
  • spec: add system-logger-pino change proposal #184
  • docs: update memory layer documentation with triple-layer architecture and daily reflection #183

1.2.3

11 June 2026

  • chore: bump version to 1.2.3 and update changelog #182
  • fix: ensure graceful shutdown in non-interactive chat mode #181

1.2.2

11 June 2026

  • chore: bump version to 1.2.2 and update changelog #180
  • feat: persist reflection-daily cron job JSON file on disk #179

1.2.1

11 June 2026

  • chore: bump version to 1.2.1 and update changelog #178
  • feat: auto-create daily reflection cron job on first profile creation #177

1.2.0

11 June 2026

  • chore: bump version to 1.2.0 and update changelog #176
  • feat: add Reflection skill, enhance memory injection, rename cronjob → cronJob #175

1.1.0

11 June 2026

  • chore: bump version to 1.1.0 and update changelog #174
  • feat: optimistic GC with V8 collection on idle #173

1.0.9

10 June 2026

  • chore: bump version to 1.0.9 and update changelog #172
  • feat: restrict todo tool to ASCII-only key and content #171
  • feat: tighten completion directive and add stateful execution #169
  • fix: correct TUI Ink API mismatches, key handling, and error handling #167

1.0.8

10 June 2026

  • chore: update dependencies and changelog #166
  • feat: sync crontab on init and clean test artifacts #165

1.0.7

10 June 2026

  • chore: update changelog and lock deps #164
  • feat: redesign todo tool with structured API and key-based operations #163
  • chore: remove refactor-tui-opentui OpenSpec change artifacts #162
  • chore: update CHANGELOG.md with auto-generated release notes #161
  • docs: archive publish-npm-bin and sync npm-publish spec #160
  • refactor: remove internal scheduler loop, replace CronInstaller with Cron CRUD, wire cronjob tool #159
  • feat: rename CronInstaller to Cron with CRUD ops, remove scheduler loop #158

1.0.5

9 June 2026

  • chore: bump version to 1.0.5 and update CHANGELOG #157
  • feat: add panel focus indicator with border highlight #156
  • docs: replace fork() with spawn() in system diagram #154
  • docs: add getting started tutorial and expand env var table #153

1.0.4

8 June 2026

  • chore: bump version to 1.0.4 and update CHANGELOG #152
  • fix: create user before cache dir in Dockerfile #151
  • fix: install cron package and start crond daemon in Docker container #150
  • chore(deps): bump oxlint from 1.68.0 to 1.69.0 #149
  • chore(deps): bump oxfmt from 0.53.0 to 0.54.0 #148
  • chore(deps): bump the langgraph group with 2 updates #147

1.0.3

7 June 2026

  • chore: rename package to @avoidwork/madz and bump to 1.0.3 #146

1.0.2

7 June 2026

  • chore: bump version to 1.0.2 #144
  • feat: add npm publish bin with CLI distribution #142
  • docs: add link to denkerne.ai project website #141

1.0.1

7 June 2026

  • chore: update CHANGELOG.md with recent release entries #140
  • feat: add configurable recursion limit and graceful error handling #139

1.0.0

7 June 2026

  • chore: add CHANGELOG.md with auto-changelog generation #138
  • feat: include LICENSE file in Docker image #137
  • docs: blend intro and overview in README.md for a tighter introduction #136
  • fix(searxng): resolve env vars and custom backend detection #135
  • docs: add Docker environment variables table to README #134
  • feat: move version from statusBar to startup banner #133
  • docs: improve README structure with Docker-first quick start #132
  • docs: remove beta badge and update coverage to 93.37% #131
  • fix: auto-start madz app on SSH login via profile and TTY allocation #130
  • fix: use env command to write sourceable env file for SSH sessions #129
  • fix: ensure all docker release scripts publish version and latest tags #128
  • fix: persist Docker environment variables into SSH login sessions #127
  • fix: remove searxng from dropped keys so SEARXNG_URL env var is used #126
  • refactor: use resolved config values instead of process.env in tools #124
  • fix: add prompts/ directory to Dockerfile #123
  • chore: require Node.js 24+ and remove console statements #122
  • chore: archive completed change multiarch-docker-build #121
  • feat: add Dockerfile, docker-compose.yml, and ssh access for madz user #120
  • feat: add multiarch docker build and docker-compose support #119
  • feat: add create_skill tool for spec-compliant skill scaffolding #118
  • feat: achieve full compliance with Agent Skills spec #117
  • feat: add skill spec compliance change - SKILL.md format migration #116
  • refactor: remove shouldRun alias and add error isolation in ScheduleManager #115
  • chore: remove stale OpenSpec change crash-if-session-dir-missing #113
  • docs: propose OpenTUI TUI migration #112
  • chore(actions): bump dependabot/fetch-metadata from 2 to 3 #109
  • chore(deps): bump @langchain/langgraph in the langgraph group #110
  • fix: remove invalid automerge from dependabot.yml and add workflow #108
  • fix: move automerge to top level in dependabot.yml #107
  • chore(deps): enable automerge for Dependabot PRs #106
  • docs: update memory system description and add sandbox paths #105
  • refactor: rewrite scheduler with cron-parser, system cron support, and async I/O #103
  • feat: crash if sessions directory missing after init #102
  • feat: crash if sessions directory missing after init #99
  • fix: auto-save session on every message with valid frontmatter #98
  • chore(deps): bump oxfmt from 0.51.0 to 0.53.0 #96
  • chore(deps): bump js-yaml from 4.1.1 to 4.2.0 #95
  • chore(deps): bump oxlint from 1.66.0 to 1.68.0 #94
  • chore(deps): bump ink from 7.0.3 to 7.0.5 #92
  • chore(deps): bump @langchain/langgraph in the langgraph group #91
  • chore(actions): bump actions/checkout from 4 to 6 #90
  • chore(actions): bump actions/setup-node from 4 to 6 #89
  • refactor: use grep -r for session_search, rename conversationsDir to sessionsDir #97
  • fix: remove automerge from dependabot yml to fix schema validation #88
  • chore: add dependabot auto-update with CI workflow #87
  • docs: add GitHub community and security documents #86
  • fix: pass config as second argument to agent.invoke() for checkpointer #85
  • Revert "docs: add TUI focus panel change proposal (#82)" #84
  • docs: add TUI focus panel change proposal #82
  • refactor: TUI command cleanup and new session support #80
  • chore: archive ephemeral-sampling-tool change and sync spec to main #79
  • feat: add date tool with ISO 8601 and human-readable formatting #78
  • docs: simplify date tool to ternary dispatch, drop formatDate helper #77
  • improve: add Response Standards section with date-checking and verification directives #75
  • chore: add src/memory/ to gitignore exclusion for isolated memory sources #74
  • feat: add ephemeral sampling tool #72
  • docs: sync documentation to match actual source code and package.json dependencies #71
  • feat: add contextual onboarding flow with profile storage #70
  • refactor: isolate test file writes, fix env var pollution, strip ANSI escape codes #66
  • fix: isolate test memory data from user memory directory #65
  • feat: refactor memory tool to per-entry files with metadata #64
  • chore: remove hello_world debug tool from codebase #63
  • chore: set schedules.entries to empty list #62
  • docs: use non-numeric headers and bulleted table of contents #60
  • docs: add TOCs to FLOWS.md and TUI_FLOWS.md #59
  • feat(tui): optimize repaints with memoized components and static cursor #57
  • feat: adopt streamEvents v2 protocol for enhanced real-time TUI streaming #56
  • docs: add blinking cursor input proposal with spec and design #51
  • fix: use stream(values) for reliable agent streaming #50
  • fix: register web tools for SearXNG, Bing, and Custom search backends #49
  • fix: prevent process exit when tools execute #48
  • feat: wire LangGraph checkpointer for multi-turn conversations #47
  • feat: bind all tools to LLM with runtime options injection #46
  • feat: Add LangGraph checkpointer for multi-turn conversations #45
  • chore: archive refactor-chat-view-ink-scroll-view change #44
  • archive: add-tools-tier2 with spec sync #43
  • chore: archive system-time-formatting change and add purge-branches script #42
  • docs: achieve 100% test coverage for vision.js and update project documentation #41
  • feat: add system time formatting for conversation timestamps #40
  • feat: add Tier 2 tools (TTS, MOA) and safety config extension #39
  • feat: use marked-terminal for markdown rendering in TUI conversation messages #35
  • feat(tui): refactor chat view to use ink-scroll-view #33
  • feat(tui): add app name and version display in input panel #32
  • chore: remove banner art from TUI conversation panel #31
  • feat: fix skills discovery, tool rendering, and add tier 2 tools #30
  • feat: upgrade TUI streaming to LangGraph streamEvents v3 #29
  • feat: improve TUI streaming with cursor indicator and message updates #28
  • fix: ReAct agent conversation flow with proper LangChain messages #25
  • fix: search backwards for AI message content in callReactAgent #24
  • fix: include error message in TUI error content and remove tsc references #23
  • feat: simplify to single inference provider, remove provider fallback #22
  • chore: archive implement-openai-provider change #21
  • fix(tui): add global error handlers for uncaught exceptions and rejections #20
  • docs: update README and OVERVIEW with Agent, Provider, and Tools sections #17
  • feat(tools): add Tier 1 foundational tools with permission gating #16
  • feat: add Tier 1 tools proposal with full design specs and tasks #15
  • feat: implement openai provider with LangGraph ReAct agent #14
  • feat: add npm start script and update README #13
  • docs: add config-set-tool change proposal #12
  • feat: make assistant display name configurable in TUI #11
  • feat: add BBS-style startup banner with command help menu #10
  • feat: add bubble chat layout with right-aligned user messages #9
  • fix(tui): wire InputPanel for Enter-to-send instead of broken app.js handler #8
  • chore: archive llm-tui-harness change #7
  • feat: implement llm-tui-harness core architecture #6
  • feat: add LLM TUI harness change with 8 capabilities and 51 tasks #5
  • chore: stage all untracked files #1
  • Initial commit a184a67

© 2026 Jason Mulligan. ALL RIGHTS RESERVED.

View on GitHub →