actoviq-agent-sdk 0.4.1 → 0.4.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (108) hide show
  1. package/README-zh.md +59 -59
  2. package/README.md +73 -19
  3. package/assets/actoviq-icon.png +0 -0
  4. package/bin/actoviq-gui.js +24 -0
  5. package/dist/src/cli/actoviq-react.js +31 -14
  6. package/dist/src/cli/actoviq-react.js.map +1 -1
  7. package/dist/src/cli/actoviq-tui.js +9 -0
  8. package/dist/src/cli/actoviq-tui.js.map +1 -1
  9. package/dist/src/cli/bridge-interactive-agent.js +94 -15
  10. package/dist/src/cli/bridge-interactive-agent.js.map +1 -1
  11. package/dist/src/cli/version.d.ts +3 -0
  12. package/dist/src/cli/version.d.ts.map +1 -0
  13. package/dist/src/cli/version.js +28 -0
  14. package/dist/src/cli/version.js.map +1 -0
  15. package/dist/src/hooks/userHooks.d.ts +39 -0
  16. package/dist/src/hooks/userHooks.d.ts.map +1 -0
  17. package/dist/src/hooks/userHooks.js +169 -0
  18. package/dist/src/hooks/userHooks.js.map +1 -0
  19. package/dist/src/index.d.ts +4 -0
  20. package/dist/src/index.d.ts.map +1 -1
  21. package/dist/src/index.js +4 -0
  22. package/dist/src/index.js.map +1 -1
  23. package/dist/src/mcp/mcpServerConfig.d.ts +19 -0
  24. package/dist/src/mcp/mcpServerConfig.d.ts.map +1 -0
  25. package/dist/src/mcp/mcpServerConfig.js +51 -0
  26. package/dist/src/mcp/mcpServerConfig.js.map +1 -0
  27. package/dist/src/memory/projectContext.d.ts +29 -0
  28. package/dist/src/memory/projectContext.d.ts.map +1 -0
  29. package/dist/src/memory/projectContext.js +107 -0
  30. package/dist/src/memory/projectContext.js.map +1 -0
  31. package/dist/src/parity/actoviqBridgeSdk.d.ts +3 -0
  32. package/dist/src/parity/actoviqBridgeSdk.d.ts.map +1 -1
  33. package/dist/src/parity/actoviqBridgeSdk.js +93 -92
  34. package/dist/src/parity/actoviqBridgeSdk.js.map +1 -1
  35. package/dist/src/parity/bridgeConfigs.d.ts +20 -0
  36. package/dist/src/parity/bridgeConfigs.d.ts.map +1 -0
  37. package/dist/src/parity/bridgeConfigs.js +110 -0
  38. package/dist/src/parity/bridgeConfigs.js.map +1 -0
  39. package/dist/src/parity/bridgeEventAdapter.d.ts +20 -0
  40. package/dist/src/parity/bridgeEventAdapter.d.ts.map +1 -0
  41. package/dist/src/parity/bridgeEventAdapter.js +121 -0
  42. package/dist/src/parity/bridgeEventAdapter.js.map +1 -0
  43. package/dist/src/parity/bridgeExecResolver.d.ts +27 -0
  44. package/dist/src/parity/bridgeExecResolver.d.ts.map +1 -0
  45. package/dist/src/parity/bridgeExecResolver.js +95 -0
  46. package/dist/src/parity/bridgeExecResolver.js.map +1 -0
  47. package/dist/src/parity/bridgeProviders.d.ts +132 -0
  48. package/dist/src/parity/bridgeProviders.d.ts.map +1 -0
  49. package/dist/src/parity/bridgeProviders.js +651 -0
  50. package/dist/src/parity/bridgeProviders.js.map +1 -0
  51. package/dist/src/prompts/outputStyles.d.ts +20 -0
  52. package/dist/src/prompts/outputStyles.d.ts.map +1 -0
  53. package/dist/src/prompts/outputStyles.js +35 -0
  54. package/dist/src/prompts/outputStyles.js.map +1 -0
  55. package/dist/src/prompts/systemPrompt.d.ts.map +1 -1
  56. package/dist/src/prompts/systemPrompt.js +9 -1
  57. package/dist/src/prompts/systemPrompt.js.map +1 -1
  58. package/dist/src/router/modelRouter.d.ts +52 -0
  59. package/dist/src/router/modelRouter.d.ts.map +1 -0
  60. package/dist/src/router/modelRouter.js +262 -0
  61. package/dist/src/router/modelRouter.js.map +1 -0
  62. package/dist/src/runtime/agentClient.d.ts +3 -1
  63. package/dist/src/runtime/agentClient.d.ts.map +1 -1
  64. package/dist/src/runtime/agentClient.js +6 -2
  65. package/dist/src/runtime/agentClient.js.map +1 -1
  66. package/dist/src/runtime/agentSession.d.ts +6 -0
  67. package/dist/src/runtime/agentSession.d.ts.map +1 -1
  68. package/dist/src/runtime/agentSession.js +15 -0
  69. package/dist/src/runtime/agentSession.js.map +1 -1
  70. package/dist/src/runtime/bashClassification.d.ts +18 -0
  71. package/dist/src/runtime/bashClassification.d.ts.map +1 -0
  72. package/dist/src/runtime/bashClassification.js +83 -0
  73. package/dist/src/runtime/bashClassification.js.map +1 -0
  74. package/dist/src/team/modelTeam.d.ts +32 -7
  75. package/dist/src/team/modelTeam.d.ts.map +1 -1
  76. package/dist/src/team/modelTeam.js +289 -690
  77. package/dist/src/team/modelTeam.js.map +1 -1
  78. package/dist/src/team/teamDefinitions.d.ts.map +1 -1
  79. package/dist/src/team/teamDefinitions.js +0 -11
  80. package/dist/src/team/teamDefinitions.js.map +1 -1
  81. package/dist/src/team/teamRuntime.d.ts +60 -0
  82. package/dist/src/team/teamRuntime.d.ts.map +1 -0
  83. package/dist/src/team/teamRuntime.js +139 -0
  84. package/dist/src/team/teamRuntime.js.map +1 -0
  85. package/dist/src/tools/actoviqCoreTools.d.ts +1 -0
  86. package/dist/src/tools/actoviqCoreTools.d.ts.map +1 -1
  87. package/dist/src/tools/actoviqCoreTools.js +5 -0
  88. package/dist/src/tools/actoviqCoreTools.js.map +1 -1
  89. package/dist/src/tools/planMode/PlanModeTools.d.ts +18 -0
  90. package/dist/src/tools/planMode/PlanModeTools.d.ts.map +1 -0
  91. package/dist/src/tools/planMode/PlanModeTools.js +71 -0
  92. package/dist/src/tools/planMode/PlanModeTools.js.map +1 -0
  93. package/dist/src/tui/actoviqTui.d.ts +3 -0
  94. package/dist/src/tui/actoviqTui.d.ts.map +1 -1
  95. package/dist/src/tui/actoviqTui.js +1544 -95
  96. package/dist/src/tui/actoviqTui.js.map +1 -1
  97. package/dist/src/tui/transcript.d.ts +6 -0
  98. package/dist/src/tui/transcript.d.ts.map +1 -1
  99. package/dist/src/tui/transcript.js +27 -0
  100. package/dist/src/tui/transcript.js.map +1 -1
  101. package/dist/src/types.d.ts +199 -66
  102. package/dist/src/types.d.ts.map +1 -1
  103. package/dist/src/types.js.map +1 -1
  104. package/dist/src/ui/commandSurface.d.ts +13 -0
  105. package/dist/src/ui/commandSurface.d.ts.map +1 -0
  106. package/dist/src/ui/commandSurface.js +100 -0
  107. package/dist/src/ui/commandSurface.js.map +1 -0
  108. package/package.json +9 -3
package/README-zh.md CHANGED
@@ -1,4 +1,4 @@
1
- # Actoviq Agent SDK
1
+ # Actoviq Agent SDK
2
2
 
3
3
  [![CI](https://github.com/DeconBear/actoviq-agent-sdk/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/DeconBear/actoviq-agent-sdk/actions/workflows/ci.yml)
4
4
  [![Publish npm Package](https://github.com/DeconBear/actoviq-agent-sdk/actions/workflows/publish-npm.yml/badge.svg?branch=main)](https://github.com/DeconBear/actoviq-agent-sdk/actions/workflows/publish-npm.yml)
@@ -9,20 +9,35 @@
9
9
 
10
10
  文档站地址:https://deconbear.github.io/actoviq-agent-sdk/
11
11
 
12
- Actoviq Agent SDK 是一个实验性的 TypeScript Agent SDK,面向多工具、多会话、多代理工作流。当前项目以 Hadamard SDK 作为唯一公开主路径。
12
+ **Actoviq** 是一个 agent team 平台 —— 一个 TypeScript 框架,用于将多个 AI agent、运行时和提供商组合成协作的多 agent 系统。它起源于可编程 agent SDK,但现在的目标是解决 **多 agent、多运行时状态管理** 和 **model team 协作**:协调多个专用模型、跨提供商路由、以及使用共享上下文编排 agent 集群。
13
13
 
14
- ## v0.5.0 亮点
14
+ Claude Code、Codex、Deepagents 等项目启发。Actoviq 保持独立,拥有自己的公开 API 与文档。
15
15
 
16
- - **Model Team** — 4 种多模型协作模式(Panel/Router/Discussion/Executor-Reviewer),每成员独立 provider 配置,$ENV_VAR apiKey 解析,全局 AgentPool
17
- - **Dynamic Workflows** — JS 脚本多 agent 编排,`agent()`/`parallel()`/`pipeline()` 原语,沙箱运行时,Schema 强制
18
- - **Worktree 工具** — `EnterWorktree`/`ExitWorktree`,栈式 cwd,`.worktreeinclude`,PR checkout,非 Git VCS hooks
19
- - **TavilySearch** — AI 优化网络搜索,纯 TypeScript,自动 key 检测
20
- - **标准 Benchmark** — 自包含跑分框架,DeepSeek judge,HTML 看板,4 agent 对比
21
- - **TUI/REPL**: `/workflows`、`/worktree`、`/team` 斜杠命令
16
+ ## 愿景
22
17
 
23
- 这个项目参考并借鉴了 Claude Code、Codex、Deepagents 等优秀项目和运行时设计,但 Actoviq 仍然是一个独立维护的公开 SDK 项目,拥有自己的 API 表面和文档体系。
18
+ - **多 agent**:子代理委派(Task 工具)、panel-analysis 团队、reviewer-auditor 对、动态 workflow —— agent 之间协作,而非单一的 ReAct 循环。
19
+ - **多运行时状态管理**:bridge config 支持预配置多个后端(anthropic / openai / 任意兼容)的 apiKey + baseURL + model,命名切换,对话上下文在切换中保留(同一个 session 对象、同一份 transcript)。
20
+ - **model team 协作**:leader 将每轮分派给最佳 specialist(`/model router`),panel 成员并行调查并收敛,reviewer 只报告可验证的问题 —— team 是 agent 可调用的一等工具。
24
21
 
25
- 项目仍在持续开发中,API 和运行行为后续还会继续打磨。欢迎提交 Issue 和 PR。
22
+ ## 亮点
23
+
24
+ - **Model Team** — `panel-analysis`(并行调查 + 收敛)和 `reviewer`(只报告可验证问题的审计者)。集中化运行时(`src/team/teamRuntime.ts`),每个成员有稳定身份,流式 `TeamEvent`,每成员独立 provider 配置,全局 AgentPool。
25
+ - **Model Router / Leader-Dispatch** — 每轮由 leader 分派到最佳 specialist(任意模型/提供商),执行者自身也可召集 team。Profile 位于 `~/.actoviq/routers/`。
26
+ - **Dynamic Workflows** — JS 脚本多 agent 编排:`agent()`/`parallel()`/`pipeline()` 原语,沙箱运行时,Schema 强制。
27
+ - **Bridge(命名连接配置)** — 进程内运行时切换:预配置 `anthropic`/`openai` 后端,命名 + apiKey + baseURL + model,命名切换,多轮上下文保留。`/bridge config` 单页编辑器;`/bridge` 列出已保存配置;`/cost` 中按配置展示用量。
28
+ - **桌面 GUI (`actoviq-gui`)** — Electron 聊天 UI:流式 transcript、对话历史、命令面板、设置、每工具权限提示。安全增强。
29
+ - **TUI (`actoviq-tui`)** — 终端 UI,25+ 斜杠命令,Claude Code 风格 UX:`/team`、`/bridge`、`/plan`、`/hooks`、`/mcp`、`/review`、`/context`、`/cost`、`/doctor` 等。实时状态旋转器、滚动 transcript、todo 面板、项目/用户级权限对话框、子命令自动补全。
30
+ - **计划模式 + hooks** — `EnterPlanMode`/`ExitPlanMode` 工具 + 计划文件;`settings.json` 中的 `PreToolUse`/`PostToolUse`/`SessionStart` hooks。
31
+ - **Worktree 工具** — `EnterWorktree`/`ExitWorktree`,栈式 cwd,`.worktreeinclude`,PR checkout。
32
+ - **TavilySearch** — AI 优化网络搜索,纯 TypeScript。
33
+ - **Standard Benchmark** — 自包含框架,DeepSeek judge,HTML dashboard,4-agent 对比。
34
+
35
+ ## 路线图 — 迈向 agent team
36
+
37
+ - **Swarm 协作** — 基于邮箱的 agent 间通信、任务队列、共享知识图谱。
38
+ - **持久 team 记忆** — team 级上下文,跨会话和成员变更保留。
39
+ - **跨运行时会话延续** — 恢复 bridge 运行时会话时保留精确位置。
40
+ - **Model team IDE** — 可视化团队构建器、成员角色编辑器、团队健康仪表板。
26
41
 
27
42
  ## 安装
28
43
 
@@ -30,25 +45,25 @@ Actoviq Agent SDK 是一个实验性的 TypeScript Agent SDK,面向多工具
30
45
  npm install actoviq-agent-sdk zod
31
46
  ```
32
47
 
33
- 本地示例默认读取:
48
+ 本地使用,请将配置放在:
34
49
 
35
50
  ```text
36
51
  ~/.actoviq/settings.json
37
52
  ```
38
53
 
39
- 如果你希望使用自定义 JSON 配置文件,也可以先调用 `loadJsonConfigFile(...)`。
54
+ 也可以使用 `loadJsonConfigFile(...)` 预加载自定义 JSON 文件。
40
55
 
41
- ## 快速启动
56
+ ## 快速开始
42
57
 
43
58
  ```ts
44
59
  import { createAgentSdk, loadDefaultActoviqSettings } from 'actoviq-agent-sdk';
45
60
 
46
61
  await loadDefaultActoviqSettings();
47
62
 
48
- // 默认:Anthropic 协议
63
+ // 默认 Anthropic 协议
49
64
  const sdk = await createAgentSdk();
50
65
 
51
- // 或使用 OpenAI / OpenAI 兼容接口(DeepSeek、vLLM 等)
66
+ // 或使用 OpenAI / OpenAI 兼容 API
52
67
  const sdk = await createAgentSdk({
53
68
  provider: 'openai',
54
69
  baseURL: 'https://api.deepseek.com',
@@ -56,86 +71,71 @@ const sdk = await createAgentSdk({
56
71
  });
57
72
 
58
73
  try {
59
- const result = await sdk.run('请用一句话做自我介绍。');
74
+ const result = await sdk.run('简要介绍一下你自己。');
60
75
  console.log(result.text);
61
76
  } finally {
62
77
  await sdk.close();
63
78
  }
64
79
  ```
65
80
 
66
- 运行仓库自带示例:
81
+ 运行仓库示例:
67
82
 
68
83
  ```bash
69
84
  npm run example:actoviq-quickstart
70
85
  npm run example:actoviq-agent-helpers
71
86
  ```
72
87
 
73
- ## CLI 交互式 REPL
88
+ ## CLI REPL
74
89
 
75
- 安装包后,可以直接在终端启动交互式 REPL:
90
+ 安装包后,可以直接从终端启动交互式 scrollback 模式 REPL:
76
91
 
77
92
  ```bash
78
93
  npx actoviq-react [工作目录]
79
94
  ```
80
95
 
81
- 这是一个基于 readline 的交互式 Agent,特点:
82
- - 主终端缓冲区实时流式输出(支持原生滚动回看)
83
- - Tab 补全斜杠命令,包括会话模型、权限、压缩与恢复控制
84
- - ↑↓ 方向键浏览历史命令
85
- - Ctrl+C 中止当前请求,连按两次退出
86
-
87
- **注意:** `actoviq-react` 是一个轻量级滚动 REPL,**不是功能完整的 TUI**。它不使用 alternate screen buffer,不支持 ScrollBox 或富文本终端渲染。适合快速交互和调试。完整终端 UI 请使用下面的 `actoviq-tui`。
96
+ ## 终端 UI (TUI)
88
97
 
89
- ## 终端 UI(TUI)
90
-
91
- `actoviq-tui` 是 Clean SDK 的完整终端 UI,借鉴 Claude Code REPL 的设计:对话记录直接打印进终端原生滚动缓冲区,底部动态区域承载状态行、Claude 风格 prompt bar、斜杠命令菜单和权限确认对话框。
98
+ `actoviq-tui` 是全功能终端 UI,模拟 Claude Code 的 REPL 设计:
92
99
 
93
100
  ```bash
94
101
  npx actoviq-tui [工作目录] [选项]
95
102
 
96
103
  # 选项
97
- # --config <path> 加载指定的 Actoviq settings JSON 配置
98
- # --permission-mode <mode> default | acceptEdits | plan | bypassPermissions(默认)
99
- # --model <model> 覆盖配置中的模型
100
- # --resume <session-id> 恢复已保存的 Clean SDK 会话
104
+ # --config <路径> 加载指定的 Actoviq 设置 JSON 文件
105
+ # --permission-mode <模式> default | acceptEdits | plan | bypassPermissions (默认)
106
+ # --model <模型> 覆盖已配置的模型
107
+ # --resume <会话ID> 恢复已存储的 Hadamard SDK 会话
101
108
  # --continue 继续最近更新的会话
102
109
  ```
103
110
 
104
- 功能特性:
105
-
106
- - **原生滚动条流式转录** —— 助手文本、`⏺ 工具(参数)` 调用行和 `⎿ ✓/✗` 结果行直接写入终端缓冲区,滚动回看和复制粘贴照常可用。
107
- - **实时状态行** —— 运行中显示 spinner、耗时、工具次数、上下文规模估计和当前工具名。
108
- - **Claude 风格 prompt bar** —— 行尾输入 `\` 再按 `Enter`(或 `Ctrl+J`)换行;`↑`/`↓` 浏览历史;光标内联渲染。
109
- - **斜杠命令菜单** —— 输入 `/` 弹出过滤菜单(`↑↓` 选择、`Tab` 补全、`Enter` 执行)。直接运行 `/resume` 会打开可搜索的项目会话选择器,`/resume <session-id>` 仍可按 ID 直接恢复。
110
- - **运行时能力目录** —— `/skills`、`/agents`、`/mcp` 和 `/plugins` 用于浏览当前工作区可见的 Clean SDK 能力;`/help` 提供可搜索的命令说明。
111
- - **模型与推理强度** —— `/model` 打开模型选择器,`/model config` 可配置提供商、隐藏显示的 API key、base URL 和 `min`/`medium`/`max` 模型分级;`/effort` 可选择 `low`、`medium`、`high`、`max` 或交给提供商自动决定。
112
- - **Dream 控制** —— `/dream` 打开运行/状态选择器,也可以直接使用 `/dream run` 和 `/dream status`。
113
- - **运行中追加指令(steering)** —— Agent 工作时可以继续输入并按 `Enter`:消息进入队列(显示 `⧗ queued`),并在下一次模型请求时注入。
114
- - **权限对话框** —— 使用 `--permission-mode default` 时,变更型工具会暂停并弹出 批准 / 始终允许 / 拒绝 对话框。“始终允许”规则会随会话保存并在恢复时继续生效。
115
- - **中断控制** —— `Esc` 中止当前运行;`Ctrl+C` 清空输入(连按两次退出);空输入时 `Ctrl+D` 退出。
116
- - **内置上下文管理** —— Clean SDK 会在长会话中自动压缩上下文,并在服务端拒绝超长请求时反应式压缩恢复;压缩以 `∿ context compacted` 提示呈现。
111
+ 特性与英文 README 一致,包括上下文管理、bridge config、计划模式、hooks、MCP、诊断等。
117
112
 
118
- 两个 CLI 共享同样的 Clean SDK 运行时默认值(`~/.actoviq/settings.json` 配置、核心工具、`bypassPermissions`、不限工具迭代次数),可对接任何 Anthropic 兼容或 OpenAI 兼容的模型服务。
113
+ ## 桌面 GUI (`actoviq-gui`)
119
114
 
120
- 默认情况下,Clean SDK 会话按当前工作区隔离保存在 `~/.actoviq/projects/<workspace-key>`。显式设置的 `sessionDirectory` 仍具有最高优先级。
115
+ ```bash
116
+ npx actoviq-gui [工作目录] [选项]
117
+ ```
121
118
 
122
- 模型分级使用与提供商无关的别名。通过 `ACTOVIQ_DEFAULT_MIN_MODEL`、`ACTOVIQ_DEFAULT_MEDIUM_MODEL` 和 `ACTOVIQ_DEFAULT_MAX_MODEL` 配置后,可以在任何模型选择位置使用 `min`、`medium` 或 `max`。
119
+ ## 开发者笔记
123
120
 
124
- ## 教程入口
121
+ - **启动 CLI/GUI 前构建:** `npm run build`(clean + `tsc`)。仅类型检查用 `npm run typecheck`;运行测试套件用 `npm test -- --run`。
122
+ - **Team 行为集中化:** 通过 `src/team/teamRuntime.ts` 扩展团队,而非在每个模式中重复逻辑。
123
+ - **Router profile 是 leader/dispatch 配置:** 内置 `dispatch` profile;用户同名文件会覆盖内置。
124
+ - **`CLAUDE.md` 在此仓库中默认 git-ignore**。
125
125
 
126
- - English tutorial: [docs/en/README.md](./docs/en/README.md)
127
- - 中文教程: [docs/zh/README.md](./docs/zh/README.md)
128
- - GitHub Pages 文档站:
129
- - https://deconbear.github.io/actoviq-agent-sdk/
126
+ ## 教程
130
127
 
131
- 推荐从这里开始上手:
128
+ - 英文教程:[docs/en/README.md](./docs/en/README.md)
129
+ - 中文教程:[docs/zh/README.md](./docs/zh/README.md)
130
+ - GitHub Pages 文档站:https://deconbear.github.io/actoviq-agent-sdk/
132
131
 
132
+ 入口示例:
133
133
  - [examples/actoviq-quickstart.ts](./examples/actoviq-quickstart.ts)
134
134
  - [examples/actoviq-workflow.ts](./examples/actoviq-workflow.ts)
135
135
  - [examples/actoviq-agent-helpers.ts](./examples/actoviq-agent-helpers.ts)
136
136
 
137
- ## 欢迎贡献
137
+ ## 参与贡献
138
138
 
139
- 欢迎贡献代码、文档和示例。如果你发现问题或教程缺口,都欢迎提 Issue 或直接发 PR
139
+ 欢迎贡献。发现问题或文档缺失,请提交 Issue Pull Request
140
140
 
141
- 项目采用 [MIT License](./LICENSE)
141
+ 基于 [MIT License](./LICENSE) 许可。
package/README.md CHANGED
@@ -1,4 +1,4 @@
1
- # Actoviq Agent SDK
1
+ # Actoviq Agent SDK
2
2
 
3
3
  [![CI](https://github.com/DeconBear/actoviq-agent-sdk/actions/workflows/ci.yml/badge.svg?branch=main)](https://github.com/DeconBear/actoviq-agent-sdk/actions/workflows/ci.yml)
4
4
  [![Publish npm Package](https://github.com/DeconBear/actoviq-agent-sdk/actions/workflows/publish-npm.yml/badge.svg?branch=main)](https://github.com/DeconBear/actoviq-agent-sdk/actions/workflows/publish-npm.yml)
@@ -9,20 +9,35 @@
9
9
 
10
10
  Documentation site: https://deconbear.github.io/actoviq-agent-sdk/
11
11
 
12
- Actoviq Agent SDK is an experimental TypeScript SDK for building multi-tool, multi-session agents with a clean-first public API, MCP integration, and memory helpers.
12
+ **Actoviq** is an agent team platform — a TypeScript framework for composing multiple AI agents, runtimes, and providers into collaborative multi-agent systems. It grew out of a programmable agent SDK but now targets the **multi-agent, multi-runtime state management** and **model team collaboration** space: coordinating specialized models, routing turns across providers, and orchestrating agent swarms with shared context.
13
13
 
14
- This project is inspired by excellent agent projects and runtimes including Claude Code, Codex, Deepagents, and similar work in the ecosystem. Actoviq remains an independent project with its own public SDK surface and documentation.
14
+ Inspired by Claude Code, Codex, Deepagents, and the broader agent ecosystem. Actoviq remains independent with its own public surface and documentation.
15
15
 
16
- ## v0.5.0 Highlights
16
+ ## Vision
17
17
 
18
- - **Model Team** — 4 multi-model cooperation modes (Panel/Router/Discussion/Executor-Reviewer), per-member independent provider config, $ENV_VAR apiKey resolution, global AgentPool
19
- - **Dynamic Workflows** JS script-based multi-agent orchestration with `agent()`/`parallel()`/`pipeline()` primitives, sandboxed runtime, schema enforcement
20
- - **Worktree Tools** `EnterWorktree`/`ExitWorktree` with stack-based cwd, `.worktreeinclude`, PR checkout, hooks for non-git VCS
21
- - **TavilySearch** — AI-optimized web search, pure TypeScript, auto key detection
22
- - **Standard Benchmark** — Self-contained framework with DeepSeek judge, HTML dashboard, 4-agent comparison (Hadamard/Bridge/Official)
23
- - **TUI/REPL**: `/workflows`, `/worktree`, `/team` slash commands
18
+ - **Multi-agent**: subagent delegation (Task tool), panel-analysis teams, reviewer-auditor pairs, dynamic workflows — agents collaborating, not just a single loop.
19
+ - **Multi-runtime state management**: bridge configs let you pre-configure multiple backends (anthropic / openai / any-compatible) with apiKey + baseURL + model, switch by name mid-session, and the conversation context survives the switch (same session object, same transcript).
20
+ - **Model team collaboration**: leaders dispatch to specialists (`/model router`), panel members investigate in parallel with structured convergence, reviewers report only verifiable issues — teams as first-class tools the agent invokes.
24
21
 
25
- This repository is still under active development. APIs and runtime behavior may continue to evolve. Issues and pull requests are very welcome.
22
+ ## Highlights
23
+
24
+ - **Model Team** — `panel-analysis` (parallel investigation + convergence) and `reviewer` (verifiable-issues-only auditor). Centralized runtime (`src/team/teamRuntime.ts`) per stable member identity, streamed `TeamEvent`s, per-member provider config, `$ENV_VAR` apiKey resolution, global AgentPool.
25
+ - **Model Router / Leader-Dispatch** — a leader classifies each turn and dispatches it to the best specialist route (any model/provider), runs normally, and the executor may itself convene a team. Profiles in `~/.actoviq/routers/`.
26
+ - **Dynamic Workflows** — JS script-based multi-agent orchestration: `agent()`/`parallel()`/`pipeline()` primitives, sandboxed runtime, schema enforcement.
27
+ - **Bridge (named connection configs)** — in-process runtime switching: pre-configure `anthropic`/`openai` backends with name + apiKey + baseURL + model, switch by name mid-session, multi-turn context survives (same session). `/bridge config` single-page editor; `/bridge` lists saved configs; per-config usage tracking in `/cost`.
28
+ - **Desktop GUI (`actoviq-gui`)** — Electron chat UI: streamed transcript, conversation history, command palette, settings, per-tool permission prompts. Security-hardened.
29
+ - **TUI (`actoviq-tui`)** — Terminal UI with 25+ slash commands, Claude Code-style UX: `/team`, `/bridge`, `/plan`, `/hooks`, `/mcp`, `/review`, `/context`, `/cost`, `/doctor`, and more. Live status spinner, scrollback transcript, todo panel, permission dialogs with project/user scope, sub-command autocomplete.
30
+ - **Plan mode + hooks** — `EnterPlanMode`/`ExitPlanMode` tools with plan file; user-configurable `PreToolUse`/`PostToolUse`/`SessionStart` hooks from `settings.json`.
31
+ - **Worktree Tools** — `EnterWorktree`/`ExitWorktree` with stack-based cwd, `.worktreeinclude`, PR checkout.
32
+ - **TavilySearch** — AI-optimized web search, pure TypeScript.
33
+ - **Standard Benchmark** — Self-contained framework with DeepSeek judge, HTML dashboard, 4-agent comparison.
34
+
35
+ ## Roadmap — toward agent teams
36
+
37
+ - **Swarm coordination** — mailbox-based inter-agent communication, task queues, shared knowledge graph.
38
+ - **Persistent team memory** — team-scoped context that survives across sessions and member changes.
39
+ - **Cross-runtime session continuity** — resume a bridge runtime's session exactly where you left it, regardless of which config was active.
40
+ - **Model team IDE** — visual team builder, member role editor, team health dashboard.
26
41
 
27
42
  ## Install
28
43
 
@@ -88,7 +103,7 @@ This launches a readline-based interactive agent with:
88
103
 
89
104
  ## Terminal UI (TUI)
90
105
 
91
- `actoviq-tui` is the full terminal UI for the Hadamard SDK, modeled on Claude Code's REPL design: the transcript prints into native scrollback while a redrawable bottom region hosts the status line, a Claude-style prompt bar, the slash-command menu, and permission dialogs.
106
+ `actoviq-tui` is the full terminal UI, modeled on Claude Code's REPL design: the transcript prints into native scrollback while a redrawable bottom region hosts the status line, a Claude-style prompt bar, the slash-command menu, and permission dialogs.
92
107
 
93
108
  ```bash
94
109
  npx actoviq-tui [work-dir] [options]
@@ -104,16 +119,19 @@ npx actoviq-tui [work-dir] [options]
104
119
  Features:
105
120
 
106
121
  - **Streaming transcript in native scrollback** — assistant text, `⏺ Tool(args)` calls, and `⎿ ✓/✗` result lines flush into the normal terminal buffer; scrollback and copy/paste work as usual.
107
- - **Live status line** — spinner, elapsed time, tool count, context-size estimate, and the current tool while the agent works.
122
+ - **Live status line** — spinner, elapsed time, tool count, and the active tool while the agent works, over an always-visible mode line (model · permission · effort · team · bridge · context%) that shows context usage as a percentage of the window and turns yellow then red as it fills.
108
123
  - **Claude-style prompt bar** — type `\` then `Enter` (or `Ctrl+J`) for a newline; `↑`/`↓` walk input history; the caret renders inline.
109
- - **Slash-command menu** — type `/` to open a filtered menu (`↑↓` select, `Tab` complete, `Enter` run). `/resume` opens a searchable project-session picker, while `/resume <session-id>` still resumes directly.
110
- - **Runtime catalogs** — `/skills`, `/agents`, `/mcp`, and `/plugins` browse the Hadamard SDK capabilities visible to the current workspace; `/help` provides a searchable command reference.
111
- - **Model and effort controls** — `/model` opens a model picker, `/model config` edits the provider, masked API key, base URL, and `min`/`medium`/`max` model tiers, and `/effort` selects `low`, `medium`, `high`, `max`, or automatic provider behavior.
112
- - **Dream controls** — `/dream` opens a run/status picker; `/dream run` and `/dream status` remain available for direct use.
124
+ - **Slash-command menu** — type `/` to open a filtered menu (`↑↓` select, `Tab` complete, `Enter` run). `/resume` opens a searchable project-session picker.
125
+ - **`@` file completion** — type `@` to open a git-aware workspace file picker filtered by the partial path; subsequence fuzzy matching.
126
+ - **Team / workflow / worktree pickers** — `/team` activates a saved Model Team; `/workflows` runs a saved dynamic workflow; `/worktree` enters, exits, or lists git worktrees.
127
+ - **Permission presets + per-tool scope** — `/permissions` switches between read-only/workspace/full/plan presets; always-allow rules persist with project or user scope.
113
128
  - **Mid-run steering** — keep typing while the agent works and press `Enter`: the message is queued and injected into the very next model request (shown as `⧗ queued`).
114
- - **Permission dialogs** — with `--permission-mode default`, mutating tools pause for an approve / always-allow / deny dialog. Always-allow choices are stored with the session and restored on resume.
115
- - **Interrupts** — `Esc` aborts the current run; `Ctrl+C` clears the input (twice quickly exits); `Ctrl+D` exits on an empty prompt.
129
+ - **Plan mode + hooks** — `/plan` enters plan mode (`EnterPlanMode`/`ExitPlanMode` tools, plan file); `PreToolUse`/`PostToolUse`/`SessionStart` hooks from settings.json; `/hooks` lists them.
130
+ - **Bridge configs** — `/bridge config` manages named connection profiles (name + runtime + apiKey + baseURL + model); `/bridge` lists them; selecting one switches the active runtime in-process. Per-config usage in `/cost` and `/usage`.
131
+ - **Diagnostics + inspection** — `/doctor` checks config health; `/context` inspects the context window; `/cost`/`/usage` track token + spend (per-config breakdown); `/review` reviews the git diff; `/stats` shows session stats.
116
132
  - **Context management built in** — the Hadamard SDK auto-compacts long sessions mid-run and reactively recovers when a provider rejects an oversized prompt; compactions surface as `∿ context compacted` notices.
133
+ - **MCP management** — `/mcp add`/`/mcp remove` manage stdio + remote HTTP MCP servers, persisted to `~/.actoviq/mcp.json`.
134
+ - **Image attachments** — `@<path>.png` tokens expand into image content blocks (in-process, read as base64).
117
135
 
118
136
  Both CLIs share the same Hadamard SDK runtime defaults (Actoviq settings from `~/.actoviq/settings.json`, core tools, `bypassPermissions`, uncapped tool iterations) and run against any Anthropic-compatible or OpenAI-compatible provider.
119
137
 
@@ -121,6 +139,42 @@ By default, Hadamard SDK sessions are scoped to the current workspace under `~/.
121
139
 
122
140
  Model tiers are provider-neutral aliases. Configure them with `ACTOVIQ_DEFAULT_MIN_MODEL`, `ACTOVIQ_DEFAULT_MEDIUM_MODEL`, and `ACTOVIQ_DEFAULT_MAX_MODEL`, then use `min`, `medium`, or `max` anywhere a model can be selected.
123
141
 
142
+ ## Desktop GUI (`actoviq-gui`)
143
+
144
+ A local Electron desktop chat UI for the Hadamard SDK.
145
+
146
+ ```bash
147
+ npx actoviq-gui [work-dir] [options]
148
+
149
+ # Options
150
+ # --port <port> Internal port to bind (default: 4174, auto-fallback if busy)
151
+ # --config <path> Load a specific Actoviq settings JSON file
152
+ # --permission-mode <mode> default | acceptEdits | plan | bypassPermissions (default)
153
+ # --model <model> Override the configured model
154
+ # --resume <session-id> Resume a stored session
155
+ # --continue Resume the most recent stored session
156
+ ```
157
+
158
+ It opens an Electron window backed by a localhost-only HTTP server. Features:
159
+
160
+ - **Streamed transcript** with markdown rendering and copyable code blocks, plus live tool-call cards
161
+ - **Conversation history on resume** — opening or switching a chat replays its stored messages
162
+ - **Command palette + slash commands**, settings (provider / model / keys / appearance), workspace switching, and empty-chat cleanup
163
+ - **Per-tool permission prompts** (queued so concurrent requests don't collide) and a token-usage readout
164
+
165
+ **Security model:** the internal API is reachable only from loopback (Host + Origin allowlist, which defeats DNS-rebinding / CSRF) and requires a per-process token; the page ships a strict Content-Security-Policy. Electron runs with `sandbox`, `contextIsolation`, and no `nodeIntegration`.
166
+
167
+ > `electron` and `bun` are **optional** dependencies — installed only if you use the GUI / bridge runtime. The core SDK does not require them.
168
+ >
169
+ > **Bridge env overrides:** `ACTOVIQ_CLAUDE_PATH`, `ACTOVIQ_PI_PATH`, … (one per provider) to point the bridge at a specific runtime binary when it's not on `PATH`. See `docs/en/05-bridge-runtime.md`.
170
+
171
+ ## Developer notes
172
+
173
+ - **Build before launching the CLIs/GUI:** `npm run build` (clean + `tsc`). Type-check only with `npm run typecheck`; run the suite with `npm test -- --run`.
174
+ - **Team behavior is centralized:** extend teams through `src/team/teamRuntime.ts` (`runMemberAgent` / `buildMemberIdentities` / `preflightMember`) rather than duplicating per-mode logic. Observe a run via `team.ask(prompt, signal, { onEvent })` and inspect `result.memberStatuses` / `result.incompleteReason`.
175
+ - **Router profiles are leader/dispatch configs:** a `RouterProfile` is a leader (`routerModel`) + a roster of specialist `routes` (each with `when` and optional `role` / `description`). `BUILT_IN_ROUTER_PROFILES` ships a ready-made `dispatch` profile; a user file of the same name in `.actoviq/routers/` shadows it.
176
+ - **`CLAUDE.md` is intentionally git-ignored** in this repo — keep contributor-facing docs here in the README (or under `docs/`), not in `CLAUDE.md`.
177
+
124
178
  ## Tutorials
125
179
 
126
180
  - English tutorial: [docs/en/README.md](./docs/en/README.md)
Binary file
@@ -0,0 +1,24 @@
1
+ #!/usr/bin/env node
2
+ import { spawn } from 'node:child_process';
3
+ import { createRequire } from 'node:module';
4
+ import { fileURLToPath } from 'node:url';
5
+
6
+ const require = createRequire(import.meta.url);
7
+ const electron = require('electron');
8
+ const main = fileURLToPath(new URL('../dist/src/gui/electronMain.js', import.meta.url));
9
+
10
+ const child = spawn(electron, [main, ...process.argv.slice(2)], {
11
+ stdio: 'inherit',
12
+ env: process.env,
13
+ windowsHide: false,
14
+ });
15
+
16
+ child.on('exit', (code, signal) => {
17
+ if (signal) process.kill(process.pid, signal);
18
+ process.exit(code ?? 0);
19
+ });
20
+
21
+ child.on('error', (error) => {
22
+ console.error('Failed to start actoviq-gui:', error);
23
+ process.exit(1);
24
+ });
@@ -11,6 +11,11 @@ import { execSync } from 'node:child_process';
11
11
  import os from 'node:os';
12
12
  import path from 'node:path';
13
13
  import * as readline from 'node:readline';
14
+ import { hasVersionFlag, readPackageVersion } from './version.js';
15
+ if (hasVersionFlag(process.argv.slice(2))) {
16
+ process.stdout.write(`${readPackageVersion(import.meta.url)}\n`);
17
+ process.exit(0);
18
+ }
14
19
  const WORK_DIR = path.resolve(process.argv[2] ?? process.cwd());
15
20
  const CONFIG_PATH = process.argv[3] ?? path.join(os.homedir(), '.actoviq', 'settings.json');
16
21
  const DEFAULT_PERMISSION_MODE = 'bypassPermissions';
@@ -151,8 +156,8 @@ async function main() {
151
156
  const cmd = sp === -1 ? t.slice(1) : t.slice(1, sp);
152
157
  switch (cmd) {
153
158
  case 'exit':
154
- process.stdout.write(`\n${C.d}Goodbye.${C.r}\n`);
155
- process.exit(0);
159
+ await shutdown(0);
160
+ return;
156
161
  case 'clear':
157
162
  process.stdout.write('\x1b[2J\x1b[H');
158
163
  return;
@@ -477,8 +482,28 @@ async function main() {
477
482
  prompt: '', completer, historySize: 1000, terminal: true,
478
483
  });
479
484
  rl.setPrompt(`${C.c}> ${C.r}`);
485
+ let shuttingDown = false;
480
486
  let cc = 0;
481
487
  let ccT = null;
488
+ async function shutdown(code, closeReadline = true) {
489
+ if (shuttingDown)
490
+ return;
491
+ shuttingDown = true;
492
+ if (ccT)
493
+ clearTimeout(ccT);
494
+ abortCtrl?.abort();
495
+ if (process.stdin.isTTY)
496
+ process.stdin.setRawMode(false);
497
+ process.stdin.pause();
498
+ if (closeReadline)
499
+ rl.close();
500
+ process.stdout.write(`\n${C.d}Goodbye.${C.r}\n`);
501
+ try {
502
+ await sdk.close();
503
+ }
504
+ catch { }
505
+ process.exit(code);
506
+ }
482
507
  readline.emitKeypressEvents(process.stdin);
483
508
  if (process.stdin.isTTY)
484
509
  process.stdin.setRawMode(true);
@@ -486,8 +511,7 @@ async function main() {
486
511
  if (key?.name === 'c' && key?.ctrl) {
487
512
  cc++;
488
513
  if (cc >= 2) {
489
- process.stdout.write(`\n${C.d}Goodbye.${C.r}\n`);
490
- rl.close();
514
+ void shutdown(0);
491
515
  return;
492
516
  }
493
517
  if (ccT)
@@ -517,16 +541,9 @@ async function main() {
517
541
  }
518
542
  rl.prompt();
519
543
  });
520
- rl.on('close', async () => {
521
- if (process.stdin.isTTY)
522
- process.stdin.setRawMode(false);
523
- process.stdout.write(`\n${C.d}Goodbye.${C.r}\n`);
524
- try {
525
- await sdk.close();
526
- }
527
- catch { }
528
- process.exit(0);
529
- });
544
+ rl.on('close', () => void shutdown(0, false));
545
+ process.on('SIGINT', () => void shutdown(0));
546
+ process.on('SIGTERM', () => void shutdown(0));
530
547
  }
531
548
  main().catch((e) => { process.stderr.write(`Fatal: ${e.message}\n`); process.exit(1); });
532
549
  //# sourceMappingURL=actoviq-react.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"actoviq-react.js","sourceRoot":"","sources":["../../../src/cli/actoviq-react.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actoviq-react.js","sourceRoot":"","sources":["../../../src/cli/actoviq-react.ts"],"names":[],"mappings":"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"}
@@ -9,6 +9,7 @@
9
9
  * uncapped tool iterations.
10
10
  */
11
11
  import { runActoviqTui } from '../tui/actoviqTui.js';
12
+ import { readPackageVersion } from './version.js';
12
13
  const PERMISSION_MODES = new Set(['default', 'acceptEdits', 'plan', 'bypassPermissions', 'auto']);
13
14
  function parseArgs(argv) {
14
15
  const result = {};
@@ -17,6 +18,9 @@ function parseArgs(argv) {
17
18
  if (arg === '--help' || arg === '-h') {
18
19
  result.help = true;
19
20
  }
21
+ else if (arg === '--version' || arg === '-v') {
22
+ result.version = true;
23
+ }
20
24
  else if (arg === '--config' && argv[index + 1]) {
21
25
  result.configPath = argv[++index];
22
26
  }
@@ -48,6 +52,10 @@ function parseArgs(argv) {
48
52
  return result;
49
53
  }
50
54
  const args = parseArgs(process.argv.slice(2));
55
+ if (args.version) {
56
+ process.stdout.write(`${readPackageVersion(import.meta.url)}\n`);
57
+ process.exit(0);
58
+ }
51
59
  if (args.help) {
52
60
  process.stdout.write([
53
61
  'actoviq-tui — Clean SDK terminal UI',
@@ -60,6 +68,7 @@ if (args.help) {
60
68
  ' --model <model> Override the configured model',
61
69
  ' --resume <session-id> Resume a stored Clean SDK session',
62
70
  ' --continue Resume the most recent stored session',
71
+ ' -v, --version Show package version',
63
72
  ' -h, --help Show this help',
64
73
  '',
65
74
  ].join('\n'));
@@ -1 +1 @@
1
- {"version":3,"file":"actoviq-tui.js","sourceRoot":"","sources":["../../../src/cli/actoviq-tui.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actoviq-tui.js","sourceRoot":"","sources":["../../../src/cli/actoviq-tui.ts"],"names":[],"mappings":"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"}