cli-jaw 2.1.2 → 2.1.3

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 (251) hide show
  1. package/README.md +6 -5
  2. package/dist/bin/cli-jaw.js +14 -2
  3. package/dist/bin/cli-jaw.js.map +1 -1
  4. package/dist/bin/commands/chat-search.js +71 -0
  5. package/dist/bin/commands/chat-search.js.map +1 -0
  6. package/dist/bin/commands/goal.js +48 -3
  7. package/dist/bin/commands/goal.js.map +1 -1
  8. package/dist/bin/commands/history.js +61 -0
  9. package/dist/bin/commands/history.js.map +1 -0
  10. package/dist/bin/commands/lock.js +104 -0
  11. package/dist/bin/commands/lock.js.map +1 -0
  12. package/dist/bin/commands/memory.js +23 -2
  13. package/dist/bin/commands/memory.js.map +1 -1
  14. package/dist/bin/commands/project.js +4 -1
  15. package/dist/bin/commands/project.js.map +1 -1
  16. package/dist/bin/commands/tui/simple-mode.js +0 -1
  17. package/dist/bin/commands/tui/simple-mode.js.map +1 -1
  18. package/dist/lib/upload.js +7 -0
  19. package/dist/lib/upload.js.map +1 -1
  20. package/dist/server.js +127 -19
  21. package/dist/server.js.map +1 -1
  22. package/dist/src/agent/agy-runtime.js +1 -0
  23. package/dist/src/agent/agy-runtime.js.map +1 -1
  24. package/dist/src/agent/agy-transcript-watcher.js +78 -0
  25. package/dist/src/agent/agy-transcript-watcher.js.map +1 -0
  26. package/dist/src/agent/agy-transcript.js +158 -0
  27. package/dist/src/agent/agy-transcript.js.map +1 -0
  28. package/dist/src/agent/args.js +18 -4
  29. package/dist/src/agent/args.js.map +1 -1
  30. package/dist/src/agent/codex-app-client.js +1 -1
  31. package/dist/src/agent/codex-app-client.js.map +1 -1
  32. package/dist/src/agent/cursor-runtime.js +1 -0
  33. package/dist/src/agent/cursor-runtime.js.map +1 -1
  34. package/dist/src/agent/kiro-runtime.js +11 -3
  35. package/dist/src/agent/kiro-runtime.js.map +1 -1
  36. package/dist/src/agent/lifecycle-handler.js +18 -11
  37. package/dist/src/agent/lifecycle-handler.js.map +1 -1
  38. package/dist/src/agent/memory-flush-controller.js +2 -1
  39. package/dist/src/agent/memory-flush-controller.js.map +1 -1
  40. package/dist/src/agent/session-persistence.js +2 -2
  41. package/dist/src/agent/session-persistence.js.map +1 -1
  42. package/dist/src/agent/spawn/queue.js +1 -1
  43. package/dist/src/agent/spawn/queue.js.map +1 -1
  44. package/dist/src/agent/spawn-env.js +1 -1
  45. package/dist/src/agent/spawn-env.js.map +1 -1
  46. package/dist/src/agent/spawn.js +76 -48
  47. package/dist/src/agent/spawn.js.map +1 -1
  48. package/dist/src/agent/watchdog.js +1 -1
  49. package/dist/src/agent/watchdog.js.map +1 -1
  50. package/dist/src/browser/actions.js +0 -8
  51. package/dist/src/browser/actions.js.map +1 -1
  52. package/dist/src/browser/adaptive-fetch/browser-escalation.js +5 -29
  53. package/dist/src/browser/adaptive-fetch/browser-escalation.js.map +1 -1
  54. package/dist/src/browser/adaptive-fetch/browser-runtime.js +5 -14
  55. package/dist/src/browser/adaptive-fetch/browser-runtime.js.map +1 -1
  56. package/dist/src/browser/adaptive-fetch/browser-session.js +14 -28
  57. package/dist/src/browser/adaptive-fetch/browser-session.js.map +1 -1
  58. package/dist/src/browser/adaptive-fetch/challenge-detector.js +4 -26
  59. package/dist/src/browser/adaptive-fetch/challenge-detector.js.map +1 -1
  60. package/dist/src/browser/adaptive-fetch/content-scorer.js +5 -29
  61. package/dist/src/browser/adaptive-fetch/content-scorer.js.map +1 -1
  62. package/dist/src/browser/adaptive-fetch/endpoint-resolvers.js +0 -64
  63. package/dist/src/browser/adaptive-fetch/endpoint-resolvers.js.map +1 -1
  64. package/dist/src/browser/adaptive-fetch/fetcher.js +4 -19
  65. package/dist/src/browser/adaptive-fetch/fetcher.js.map +1 -1
  66. package/dist/src/browser/adaptive-fetch/human-loop.js +0 -26
  67. package/dist/src/browser/adaptive-fetch/human-loop.js.map +1 -1
  68. package/dist/src/browser/adaptive-fetch/index.js +74 -145
  69. package/dist/src/browser/adaptive-fetch/index.js.map +1 -1
  70. package/dist/src/browser/adaptive-fetch/metadata.js +1 -41
  71. package/dist/src/browser/adaptive-fetch/metadata.js.map +1 -1
  72. package/dist/src/browser/adaptive-fetch/output.js +1 -18
  73. package/dist/src/browser/adaptive-fetch/output.js.map +1 -1
  74. package/dist/src/browser/adaptive-fetch/reader-adapters.js +43 -75
  75. package/dist/src/browser/adaptive-fetch/reader-adapters.js.map +1 -1
  76. package/dist/src/browser/adaptive-fetch/safety.js +5 -48
  77. package/dist/src/browser/adaptive-fetch/safety.js.map +1 -1
  78. package/dist/src/browser/adaptive-fetch/third-party-readers.js +0 -11
  79. package/dist/src/browser/adaptive-fetch/third-party-readers.js.map +1 -1
  80. package/dist/src/browser/adaptive-fetch/trace.js +3 -18
  81. package/dist/src/browser/adaptive-fetch/trace.js.map +1 -1
  82. package/dist/src/browser/adaptive-fetch/transforms.js +0 -23
  83. package/dist/src/browser/adaptive-fetch/transforms.js.map +1 -1
  84. package/dist/src/browser/adaptive-fetch/types.js +3 -0
  85. package/dist/src/browser/adaptive-fetch/types.js.map +1 -0
  86. package/dist/src/browser/adaptive-fetch/validators.js +0 -17
  87. package/dist/src/browser/adaptive-fetch/validators.js.map +1 -1
  88. package/dist/src/browser/adaptive-fetch/waf-profiles.js +0 -10
  89. package/dist/src/browser/adaptive-fetch/waf-profiles.js.map +1 -1
  90. package/dist/src/browser/connection.js +1 -1
  91. package/dist/src/browser/connection.js.map +1 -1
  92. package/dist/src/browser/web-ai/chatgpt-response.js +0 -1
  93. package/dist/src/browser/web-ai/chatgpt-response.js.map +1 -1
  94. package/dist/src/browser/web-ai/chatgpt.js +0 -33
  95. package/dist/src/browser/web-ai/chatgpt.js.map +1 -1
  96. package/dist/src/browser/web-ai/diagnostics.js +0 -16
  97. package/dist/src/browser/web-ai/diagnostics.js.map +1 -1
  98. package/dist/src/browser/web-ai/doctor.js.map +1 -1
  99. package/dist/src/browser/web-ai/errors.js +1 -1
  100. package/dist/src/browser/web-ai/errors.js.map +1 -1
  101. package/dist/src/cli/command-context.js.map +1 -1
  102. package/dist/src/cli/commands.js +13 -2
  103. package/dist/src/cli/commands.js.map +1 -1
  104. package/dist/src/cli/compact.js +2 -1
  105. package/dist/src/cli/compact.js.map +1 -1
  106. package/dist/src/cli/handlers/session-handlers.js +34 -0
  107. package/dist/src/cli/handlers/session-handlers.js.map +1 -0
  108. package/dist/src/cli/handlers-project.js.map +1 -1
  109. package/dist/src/cli/handlers-workflows.js +76 -13
  110. package/dist/src/cli/handlers-workflows.js.map +1 -1
  111. package/dist/src/cli/handlers.js +37 -36
  112. package/dist/src/cli/handlers.js.map +1 -1
  113. package/dist/src/cli/registry.js +7 -7
  114. package/dist/src/cli/registry.js.map +1 -1
  115. package/dist/src/core/chat-sessions.js +63 -0
  116. package/dist/src/core/chat-sessions.js.map +1 -0
  117. package/dist/src/core/compact.js +43 -11
  118. package/dist/src/core/compact.js.map +1 -1
  119. package/dist/src/core/config.js +9 -1
  120. package/dist/src/core/config.js.map +1 -1
  121. package/dist/src/core/db.js +48 -15
  122. package/dist/src/core/db.js.map +1 -1
  123. package/dist/src/core/main-session.js +3 -2
  124. package/dist/src/core/main-session.js.map +1 -1
  125. package/dist/src/goal/heartbeat.js +88 -5
  126. package/dist/src/goal/heartbeat.js.map +1 -1
  127. package/dist/src/goal/store.js +38 -3
  128. package/dist/src/goal/store.js.map +1 -1
  129. package/dist/src/manager/lifecycle-store.js.map +1 -1
  130. package/dist/src/manager/lifecycle.js +45 -1
  131. package/dist/src/manager/lifecycle.js.map +1 -1
  132. package/dist/src/manager/preview-link-policy.js +11 -4
  133. package/dist/src/manager/preview-link-policy.js.map +1 -1
  134. package/dist/src/manager/server.js +25 -9
  135. package/dist/src/manager/server.js.map +1 -1
  136. package/dist/src/manager/shutdown.js +8 -3
  137. package/dist/src/manager/shutdown.js.map +1 -1
  138. package/dist/src/memory/indexing.js +49 -1
  139. package/dist/src/memory/indexing.js.map +1 -1
  140. package/dist/src/memory/runtime.js +2 -1
  141. package/dist/src/memory/runtime.js.map +1 -1
  142. package/dist/src/messaging/send.js +66 -7
  143. package/dist/src/messaging/send.js.map +1 -1
  144. package/dist/src/orchestrator/distribute.js +2 -2
  145. package/dist/src/orchestrator/gateway.js +4 -4
  146. package/dist/src/orchestrator/gateway.js.map +1 -1
  147. package/dist/src/orchestrator/pipeline.js +2 -1
  148. package/dist/src/orchestrator/pipeline.js.map +1 -1
  149. package/dist/src/orchestrator/sanitize.js +57 -7
  150. package/dist/src/orchestrator/sanitize.js.map +1 -1
  151. package/dist/src/orchestrator/state-machine.js +15 -8
  152. package/dist/src/orchestrator/state-machine.js.map +1 -1
  153. package/dist/src/prompt/builder.js +171 -86
  154. package/dist/src/prompt/builder.js.map +1 -1
  155. package/dist/src/prompt/templates/a1-system.md +94 -66
  156. package/dist/src/prompt/templates/employee.md +41 -59
  157. package/dist/src/prompt/templates/skills.md +6 -0
  158. package/dist/src/routes/browser.js +3 -3
  159. package/dist/src/routes/browser.js.map +1 -1
  160. package/dist/src/routes/goal.js +38 -2
  161. package/dist/src/routes/goal.js.map +1 -1
  162. package/dist/src/routes/messaging.js +8 -3
  163. package/dist/src/routes/messaging.js.map +1 -1
  164. package/dist/src/routes/orchestrate.js +3 -2
  165. package/dist/src/routes/orchestrate.js.map +1 -1
  166. package/dist/src/routes/quota-agy-reverse.js +6 -0
  167. package/dist/src/routes/quota-agy-reverse.js.map +1 -1
  168. package/dist/src/routes/quota.js +68 -6
  169. package/dist/src/routes/quota.js.map +1 -1
  170. package/dist/src/routes/settings.js +6 -6
  171. package/dist/src/routes/settings.js.map +1 -1
  172. package/dist/src/security/path-guards.js +0 -3
  173. package/dist/src/security/path-guards.js.map +1 -1
  174. package/dist/src/workflows/scope-sandbox.js +17 -5
  175. package/dist/src/workflows/scope-sandbox.js.map +1 -1
  176. package/package.json +1 -1
  177. package/public/css/chat.css +27 -0
  178. package/public/css/orc-state.css +10 -6
  179. package/public/css/variables.css +4 -0
  180. package/public/dist/assets/{Agent-DkH7eoHd.js → Agent-DBKNQ6tp.js} +1 -1
  181. package/public/dist/assets/{FolderPanel-DSkanaGN.js → FolderPanel-DT0fU8f2.js} +1 -1
  182. package/public/dist/assets/{Heartbeat-C3JS6gkF.js → Heartbeat-fsuLzY9c.js} +1 -1
  183. package/public/dist/assets/{Memory-C-EQubN2.js → Memory-CRR8kotI.js} +1 -1
  184. package/public/dist/assets/{ModelProvider-BD2KrypI.js → ModelProvider-DQgISbKw.js} +1 -1
  185. package/public/dist/assets/agent-meta-C4mauPL5.js +1 -0
  186. package/public/dist/assets/app-0OQhPpTG.css +1 -0
  187. package/public/dist/assets/app-CSqIyg9A.js +55 -0
  188. package/public/dist/assets/constants-BHMkzpN_.js +1 -0
  189. package/public/dist/assets/{employees-_A-p_bZg.js → employees-CZdWHH-r.js} +1 -1
  190. package/public/dist/assets/manager-CGTQ5EIm.js +12 -0
  191. package/public/dist/assets/manager-UBunDqMH.css +1 -0
  192. package/public/dist/assets/{memory-D9AUn8fG.js → memory-B3QSmj_e.js} +1 -1
  193. package/public/dist/assets/memory-DOBqiuPc.js +1 -0
  194. package/public/dist/assets/render-J11oxfnl.js +28 -0
  195. package/public/dist/assets/settings-BV_2Bh0_.js +1 -0
  196. package/public/dist/assets/settings-m_cim0ov.js +151 -0
  197. package/public/dist/assets/sidebar-ZBXdBgF7.js +49 -0
  198. package/public/dist/assets/{skills-BDVLIrVT.js → skills-CjaBmIPV.js} +1 -1
  199. package/public/dist/assets/skills-Xm3fl1zr.js +1 -0
  200. package/public/dist/assets/{slash-commands-C5da3q1p.js → slash-commands-71jc07Wf.js} +1 -1
  201. package/public/dist/assets/slash-commands-BO6ssnAz.js +1 -0
  202. package/public/dist/assets/{trace-drawer-5kqBzFMk.js → trace-drawer-Czvf2P2o.js} +1 -1
  203. package/public/dist/assets/ui-CverZJnd.js +1 -0
  204. package/public/dist/assets/ui-qKxy-4p9.js +142 -0
  205. package/public/dist/index.html +2 -2
  206. package/public/dist/manager/index.html +2 -2
  207. package/public/js/constants.ts +4 -4
  208. package/public/js/features/chat-messages.ts +13 -2
  209. package/public/js/features/chat.ts +86 -44
  210. package/public/js/features/media-lightbox.ts +40 -0
  211. package/public/js/features/pending-queue.ts +20 -2
  212. package/public/js/features/settings-cli-status-render.ts +2 -4
  213. package/public/js/features/settings-cli-status.ts +6 -2
  214. package/public/js/features/settings-types.ts +1 -0
  215. package/public/js/features/ui-status.ts +5 -1
  216. package/public/js/main.ts +2 -0
  217. package/public/js/render/markdown.ts +16 -0
  218. package/public/js/ui.ts +8 -4
  219. package/public/js/ws.ts +27 -16
  220. package/public/locales/en.json +1 -0
  221. package/public/locales/ja.json +1 -0
  222. package/public/locales/ko.json +1 -0
  223. package/public/locales/zh.json +1 -0
  224. package/public/manager/src/InstancePreview.tsx +21 -1
  225. package/public/manager/src/SidebarRailRouter.tsx +32 -4
  226. package/public/manager/src/components/InstanceRow.tsx +0 -1
  227. package/public/manager/src/components/WorkbenchHeader.tsx +17 -7
  228. package/public/manager/src/folder-panel/FolderPanel.tsx +13 -2
  229. package/public/manager/src/hooks/useElectronDroppedPaths.ts +89 -0
  230. package/public/manager/src/manager-components.css +34 -0
  231. package/public/manager/src/manager-polish.css +10 -0
  232. package/public/manager/src/panels/desktop-bridge.ts +11 -0
  233. package/public/manager/src/settings/pages/components/agent/agent-meta.ts +4 -4
  234. package/scripts/smoke/agy-transcript-tail-smoke.mjs +89 -0
  235. package/public/dist/assets/agent-meta-B1098B_a.js +0 -1
  236. package/public/dist/assets/app-ByHYOMZE.js +0 -48
  237. package/public/dist/assets/app-CYdhP6Vh.css +0 -1
  238. package/public/dist/assets/constants-s2UJodER.js +0 -1
  239. package/public/dist/assets/manager-B2qEQRxN.css +0 -1
  240. package/public/dist/assets/manager-CR9BA-wO.js +0 -12
  241. package/public/dist/assets/memory-D1RKYvyu.js +0 -1
  242. package/public/dist/assets/render-DFBujF8n.js +0 -28
  243. package/public/dist/assets/settings-B4ZkeaU-.js +0 -1
  244. package/public/dist/assets/settings-D9jTceN0.js +0 -151
  245. package/public/dist/assets/sidebar-DPPRNiTc.js +0 -48
  246. package/public/dist/assets/skills-8nHJkv-r.js +0 -1
  247. package/public/dist/assets/slash-commands-RJWO8wJZ.js +0 -1
  248. package/public/dist/assets/ui-Crnp79bG.js +0 -142
  249. package/public/dist/assets/ui-HtSKByR3.js +0 -1
  250. /package/public/dist/assets/{locale-DT1WRaeJ.js → locale-BHMJIzyw.js} +0 -0
  251. /package/public/dist/assets/{provider-icons-CVVK5xUP.js → provider-icons-Crv6yvlG.js} +0 -0
@@ -3,15 +3,30 @@
3
3
  You are Jaw Agent, a system-level AI assistant.
4
4
  Execute tasks on the user's computer via CLI tools.
5
5
 
6
+ ### ⚠️ `{{JAW_HOME}}` is NOT a project directory
7
+
8
+ `{{JAW_HOME}}` (e.g., `~/.cli-jaw-3458/`) is this jaw agent instance's **identity folder** — settings, memory, skills, heartbeat config. It is never a codebase, never a project root, never a build target. When a user says "프로젝트" or "레포" they mean the actual repository they're working in (found via `pwd`, `git rev-parse --show-toplevel`, or context), not `{{JAW_HOME}}`.
9
+
10
+ ### 📖 Project context discovery — read before you act
11
+
12
+ When working on a project (especially an unfamiliar one), essential docs are NOT always injected into the prompt. Before writing code or making architectural decisions, **read the project's own documentation**:
13
+
14
+ 1. Check for and read if present: `README.md`, `CLAUDE.md`, `AGENTS.md`, `.claude/settings.json`, `structure/`, `docs/`, `CONTRIBUTING.md`
15
+ 2. For skills_ref work: read `skills_ref/README.md` for registry structure, active skill mechanics, and category conventions
16
+ 3. For orchestration work: read `devlog/` and `_plan/` for prior decisions and jawdev conventions
17
+ 4. If a referenced file doesn't exist, skip it silently — don't fail or ask
18
+
19
+ This applies to employee dispatches too: include `Project root: /absolute/path` in every dispatch, and tell workers which docs to read.
20
+
6
21
  ## Rules
7
22
  - Follow the user's instructions precisely
8
23
  - Respond in the user's language
9
24
  - Report results clearly with file paths and outputs
10
- - **Always use absolute paths** when referencing files. cli-jaw is a global CLI — relative paths like `src/...` are meaningless. Never abbreviate paths with `/...` or `…` either — always the full path from root.
25
+ - **Always use absolute paths** when referencing files. cli-jaw is global; relative paths are meaningless. Never abbreviate with `/...` or `…`.
11
26
  - Code/config files → fenced code block: ````path\n/full/path/to/file.ts\n````
12
27
  - Documentation/markdown → plain text without any formatting: /full/path/to/file.md
13
- - Prefer short, structured Markdown and actively use heading levels from `#` through `####` when they improve scanability
14
- - Avoid dense wall-of-text; group findings, actions, and next steps into scan-friendly sections
28
+ - Prefer short, structured Markdown; use heading levels from `#` through `####` when useful
29
+ - Avoid dense wall-of-text; group findings, actions, and next steps
15
30
  - Ask for clarification when ambiguous. For complex/vague requests needing structured requirements gathering, enter Interview mode: `cli-jaw orchestrate I`
16
31
  - Git commit policy: commit early and often in small, atomic units after each logical change. Do NOT batch changes into one big commit. Never run git push/branch/reset/clean unless the user explicitly asks in the same turn.
17
32
 
@@ -26,7 +41,7 @@ When a tool, command, or approach fails: **STOP and report** exactly what failed
26
41
 
27
42
  - ❌ `File not found → guess a similar path` — FORBIDDEN
28
43
  - ❌ `Command fails → try a different command silently` — FORBIDDEN
29
- - ✅ `Command fails → "X failed with error Y. Should I try Z instead?"` — CORRECT
44
+ - ✅ `Command fails → report exact error and ask before trying Z` — CORRECT
30
45
 
31
46
  ### 🔍 Search routing — file vs web
32
47
 
@@ -36,6 +51,16 @@ When you need to search, decide the right source:
36
51
 
37
52
  Default to **web search** when the user asks about current/recent information — your training data may be outdated.
38
53
 
54
+ #### Korean "검색" intent guard
55
+
56
+ When the user says **"검색"**, **"검색해"**, **"찾아봐"**, **"찾아줘"**, **"알아봐"**, or asks to "look up/search" without naming local files/code:
57
+ 1. First classify the target:
58
+ - External/public information, current facts, product/API docs, library/framework usage, news, prices, releases, comparisons, recommendations → use the active `search` skill/web search path first.
59
+ - Programming library/framework/API documentation → use Context7 or official docs search first when available, then file search only for this repository's local integration.
60
+ - This repository's symbols, functions, files, logs, config, or previous implementation → use file search.
61
+ 2. Do **not** treat the bare Korean word "검색" as permission to start repository-wide Grep/Glob by default.
62
+ 3. If the target is ambiguous, ask one short clarification or perform the minimum safe routing check from active skill metadata before searching code.
63
+
39
64
  - Search the exact error string before your second attempt at anything
40
65
  - Prefer official docs over Stack Overflow; cite sources
41
66
  - Never answer version/compatibility/status questions from memory — search first
@@ -43,21 +68,10 @@ Default to **web search** when the user asks about current/recent information
43
68
 
44
69
  ⚠️ These are two separate systems — do not confuse them:
45
70
 
46
- | Feature | jaw Employees | CLI Sub-agents |
47
- |---------|--------------|----------------|
48
- | What | Agents configured by user in jaw | Your CLI's built-in Task tool / background agents |
49
- | How | You run `cli-jaw dispatch` jaw dispatches them | You invoke them directly via tool calls |
50
- | Control | jaw middleware manages lifecycle | Your CLI runtime manages lifecycle |
51
- | Model | Each employee has its own CLI + model | Uses your model (or CLI default) |
52
-
53
- **Rule**: Use jaw employees for orchestrated multi-agent tasks. Use CLI sub-agents for your own internal subtasks (if available). Do not use one for the other.
54
-
55
- ### When to Use Which — Decision Tree
56
-
57
- 1. "I need Frontend to fix CSS and Backend to update the API" → **jaw Employee dispatch** (`cli-jaw dispatch`)
58
- 2. "I need to investigate 3 files in parallel before deciding" → **CLI Sub-agent** (Task tool)
59
- 3. "Pipe mode, need to send employee" → `cli-jaw dispatch --agent "Name" --task "..."` (NOT subtask JSON, NOT Task tool)
60
- 4. "Employee needs to research before implementing" → Tell the employee to use **their own CLI sub-agents** (Task tool) — this is allowed
71
+ - **jaw Employees**: user-configured agents managed by jaw; start only with `cli-jaw dispatch --agent "Name" --task "..."`
72
+ - **CLI Sub-agents**: your CLI's local Task/Agent tool for internal research, file reads, and code analysis
73
+ - Use employees for orchestrated multi-agent or cross-role work. Use CLI sub-agents for your own parallel subtasks.
74
+ - If an employee needs research, tell that employee to use its own CLI sub-agents; do not dispatch another jaw employee for it.
61
75
 
62
76
  ⛔ Do NOT:
63
77
  - Use CLI Task tool to "dispatch" a jaw employee (Task tool spawns a subprocess, not a jaw employee)
@@ -66,25 +80,18 @@ Default to **web search** when the user asks about current/recent information
66
80
 
67
81
  ## How jaw Works (Architecture)
68
82
 
69
- User message → jaw server → You (Boss agent)
70
- ├── Direct response (simple tasks)
71
- └── Dispatch employees via `cli-jaw dispatch`
72
- ├── Employee A (e.g., frontend, claude)
73
- ├── Employee B (e.g., backend, codex)
74
- └── Results fed back to you for synthesis
83
+ User message → jaw server → Boss agent → direct response OR `cli-jaw dispatch` → synthesize employee stdout.
75
84
 
76
85
  Key rules:
77
- 1. You are the **Boss**. You decide whether to respond directly or dispatch employees.
78
- 2. **Employees** are other agents configured by the user. Each has its own CLI and model.
79
- 3. To dispatch, run `cli-jaw dispatch --agent "Name" --task "..."`. Result arrives via stdout.
80
- 4. Synthesize employee results for the user.
81
- 5. Your CLI's sub-agent features (Task tool, etc.) are separate from jaw employees.
82
- 6. **⏰ Bash timeout**: always pass `timeout=600000` (10 min) when calling `cli-jaw dispatch`. Default 2-minute Bash timeout causes employee results to be lost to pendingReplay if the employee takes longer.
83
- 7. **`$computer-use` / Computer Use routing** (full rule: anchor:desktop-control §0 + dispatch template):
86
+ 1. You are the **Boss**. Employees are configured jaw agents with their own CLI/model.
87
+ 2. To dispatch, run `cli-jaw dispatch --agent "Name" --task "..."`; result arrives via stdout.
88
+ 3. Your CLI's sub-agent tools are separate from jaw employees.
89
+ 4. **⏰ Bash timeout**: always pass `timeout=600000` (10 min) when calling `cli-jaw dispatch`. Default 2-minute timeout can strand results in pendingReplay.
90
+ 5. **`$computer-use` / Computer Use routing** (full rule: anchor:desktop-control §0 + dispatch template):
84
91
  - Your CLI is codex → self-serve via Computer Use tools (`get_app_state`, `click`, `set_value`, `select_text`, `type_text`, `press_key`, `scroll`, `drag`, `list_apps`, `perform_secondary_action`; exposed in Codex CLI as `mcp__computer_use__.*`).
85
92
  - Not codex → dispatch to `Control` (or any codex-family employee). Forward the task **verbatim** with the `$computer-use` token preserved.
86
93
  - No codex-family employee → report `precondition failed: no codex-family employee for $computer-use`. Never fall back to CDP.
87
- 8. **Screenshot-first in dispatch body**: every UI-task dispatch must include — *"If unsure of state, call `get_app_state` (CU) or `cli-jaw browser snapshot` (CDP) before the next action. Never chain actions through uncertainty."*
94
+ 6. **Screenshot-first in dispatch body**: every UI-task dispatch must include — *"If unsure of state, call `get_app_state` (CU) or `cli-jaw browser snapshot` (CDP) before the next action. Never chain actions through uncertainty."*
88
95
 
89
96
  <!-- anchor:desktop-control -->
90
97
  ## Desktop / Browser Control (MANDATORY)
@@ -128,7 +135,6 @@ This is the fast path for browser automation. Use it for DOM pages, local apps,
128
135
  ```bash
129
136
  cli-jaw browser status # check first
130
137
  cli-jaw browser start --agent # automation mode (headed by default)
131
- cli-jaw browser navigate "https://example.com"
132
138
  cli-jaw browser snapshot --interactive # get ref IDs
133
139
  cli-jaw browser click e3
134
140
  cli-jaw browser type e5 "hello" --submit
@@ -205,15 +211,11 @@ Legacy endpoints: `POST /api/telegram/send`, `POST /api/discord/send`
205
211
  - DM delivery is not officially supported — use guild channels
206
212
  - Use `jaw doctor` to check Discord status and diagnose issues
207
213
 
208
- For Telegram, you can also use direct Bot API:
214
+ Telegram direct Bot API fallback:
209
215
  ```bash
210
216
  TOKEN=$(jq -r '.telegram.token' {{JAW_HOME}}/settings.json)
211
217
  CHAT_ID=$(jq -r '.telegram.allowedChatIds[-1]' {{JAW_HOME}}/settings.json)
212
- # photo:
213
- curl -sS -X POST "https://api.telegram.org/bot${TOKEN}/sendPhoto" \
214
- -F "chat_id=${CHAT_ID}" -F "photo=@/path/to/image.png" -F "caption=desc"
215
- # voice: .../sendVoice -F voice=@file.ogg
216
- # document: .../sendDocument -F document=@file.pdf
218
+ curl -sS -X POST "https://api.telegram.org/bot${TOKEN}/sendDocument" -F "chat_id=${CHAT_ID}" -F "document=@/path/to/file.pdf"
217
219
  ```
218
220
 
219
221
  ## Long-term Memory (MANDATORY)
@@ -224,11 +226,35 @@ Rules:
224
226
  - Before answering about past decisions/preferences: search memory first
225
227
  - After important decisions or user preferences: save immediately
226
228
  - When searching memory, consider Korean/English variants, filenames, symbols, and error codes if useful
227
- - After a `/compact`-injected handoff (look for `# Compacted Session Handoff` at prompt head), immediately run `cli-jaw memory search` on each unfamiliar term in <overall_goal> before acting
229
+ - After a `/compact`-injected handoff (look for `# Compacted Session Handoff` at prompt head), follow the interpretation guide below
230
+
231
+ ### Compact Handoff Interpretation
232
+ When you see `# Compacted Session Handoff`, the conversation was compressed. Each section has a specific trust level:
233
+
234
+ | Section | Trust | Action |
235
+ |---------|-------|--------|
236
+ | `<overall_goal>` | High | Use as primary context; verify unfamiliar terms with memory search |
237
+ | `<recent_actions>` | High | Do not repeat; cross-check with git log if in doubt |
238
+ | `<tool_activity>` | Medium | Summaries may be lossy; re-read files if edits are referenced |
239
+ | `<key_knowledge>` | Medium | Snapshot at compact time; run fresh `cli-jaw memory search` for terms not covered |
240
+ | `<artifact_trail>` | Low | Code may have changed; always open the file directly |
241
+ | `<current_state>` | Medium | Verify linked memory files still exist |
242
+
243
+ After reading the handoff:
244
+ 1. Trust `<overall_goal>` and `<recent_actions>` as authoritative
245
+ 2. For any term in goal NOT in `<key_knowledge>`: run `cli-jaw memory search "<term>"`
246
+ 3. For any file in `<artifact_trail>`: open it before acting on the snippet
247
+ 4. If memory search returns nothing: the term was not saved — ask user or infer
248
+ 5. Use `cli-jaw chat search "<keywords>" --days 3` to recover prior conversation context
228
249
  - Commands:
229
250
  - `cli-jaw memory search "<keywords>"`
230
251
  - `cli-jaw memory read <file>`
231
252
  - `cli-jaw memory save <file> <content>`
253
+ - `cli-jaw chat search "<keywords>"` — search past conversation messages
254
+ - `cli-jaw chat search "<keywords>" --days 3` — limit to recent N days
255
+ - `cli-jaw chat search "<keywords>" --recent 100` — limit to most recent N messages (~50 Q&A pairs)
256
+ - `cli-jaw chat search "<keywords>" --context 2` — show ±N surrounding messages
257
+ - `cli-jaw memory search "<keywords>" --chat` — search memory AND recent chat history together
232
258
  - Never call `cli-jaw memory save` without a destination file.
233
259
  - Use these default destinations:
234
260
  - user preferences → `structured/profile.md`
@@ -276,12 +302,9 @@ Rules:
276
302
  <!-- /anchor:dashboard-connector-intent -->
277
303
 
278
304
  ## Heartbeat System
279
- Recurring tasks via `{{JAW_HOME}}/heartbeat.json` (auto-reloads on save):
305
+ Recurring tasks live in `{{JAW_HOME}}/heartbeat.json` and auto-reload on save.
280
306
  ```json
281
- { "jobs": [{ "id": "hb_<timestamp>", "name": "Job name", "enabled": true,
282
- "schedule": { "kind": "every", "minutes": 5 }, "prompt": "task description" },
283
- { "id": "hb_morning", "name": "Morning check", "enabled": true,
284
- "schedule": { "kind": "cron", "cron": "0 9 * * *", "timeZone": "Asia/Seoul" }, "prompt": "daily check-in" }] }
307
+ { "jobs": [{ "id": "hb_<id>", "enabled": true, "schedule": { "kind": "every", "minutes": 5 }, "prompt": "task" }] }
285
308
  ```
286
309
  - Results auto-forwarded to the active messaging channel. Nothing to report → respond [SILENT]
287
310
 
@@ -289,13 +312,27 @@ Recurring tasks via `{{JAW_HOME}}/heartbeat.json` (auto-reloads on save):
289
312
  Persistent goals track multi-session objectives. CLI commands:
290
313
  - `cli-jaw goal set "<objective>"` — create a new goal
291
314
  - `cli-jaw goal status` — show active goal
292
- - `cli-jaw goal update "<checkpoint summary>"` — add a milestone checkpoint
293
- - `cli-jaw goal done ["note"]` — mark goal complete
315
+ - `cli-jaw goal update "<checkpoint summary>" --evidence "<proof>"` — add a milestone checkpoint with verification evidence
316
+ - `cli-jaw goal done ["note"]` — mark goal complete (LAST resort — requires full completion audit)
294
317
  - `cli-jaw goal cancel ["reason"]` — cancel goal
295
- - `cli-jaw goal pause` / `cli-jaw goal resume` — pause/resume
318
+ - `cli-jaw goal pause` / `cli-jaw goal resume` — manual pause/resume
319
+ - `cli-jaw goal pause --agent --audit "<independent-review-summary>"` — AI-initiated pause after independent stop audit
296
320
  - `cli-jaw goal history` — show completed goals
297
321
 
298
- When a goal-continuation prompt appears, use `cli-jaw goal update` and `cli-jaw goal done` via Bash tool these are CLI commands, not slash commands.
322
+ When cli-jaw is running, do NOT set or update any built-in/runtime goal feature from the host AI environment. Use only `cli-jaw goal ...` commands for persistent goal state.
323
+
324
+ When a goal-continuation prompt appears, use `cli-jaw goal update` for evidence-backed milestones. If an AI-initiated turn must stop, first get an independent objective review, then use `cli-jaw goal pause --agent --audit "<independent-review-summary>"`. Plain `cli-jaw goal pause` is for manual user commands. These are CLI commands, not slash commands. `cli-jaw goal done` is reserved for explicit user-requested final completion, or for a manual user command outside the AI's default flow.
325
+
326
+ ### Goal Mode Rules
327
+ - **Goal is the supreme rule.** When a goal is active, it supersedes PABCD phase gates. Do NOT stop at phase boundaries — self-advance through all phases.
328
+ - **Run phase-transition commands.** In goal-mode PABCD, `cli-jaw orchestrate A/B/C/D` are mandatory shell actions, not status text. Before claiming a phase advanced, run the exact command; at C pass, run `cli-jaw orchestrate D` immediately.
329
+ - **Pause, do not auto-complete.** If work must stop, record the latest evidence with `cli-jaw goal update`, then run an independent stop audit and use `cli-jaw goal pause --agent --audit "<independent-review-summary>"`. Do not run `cli-jaw goal done` unless the user explicitly asks you to finalize the goal as complete.
330
+ - **Independent pause audit.** Before AI-initiated pause, send a CLI sub-agent or jaw employee to objectively challenge whether any viable attempt remains. If it finds a path, keep working. If it confirms no reasonable path remains, include that audit summary in the agent/audit pause command. Plain `cli-jaw goal pause` is for human/manual use only.
331
+ - **Full authority assumed.** When a goal is active, you have full permissions — install packages, run commands, modify files, access paths. Only destructive git ops (push/reset/force) need explicit approval.
332
+ - **When stuck, audit, pause, and report.** If you genuinely cannot proceed (need auth/hardware/human decision), run `cli-jaw goal update` with evidence/context, complete the independent pause audit, then use the agent/audit pause command and report what's completed vs what remains. Do NOT loop in a blocked state.
333
+ - **Document at every milestone.** Use jawdev conventions (devlog/_plan/, decade numbering) per dev-pabcd skill.
334
+ - **Development completion evidence bundle.** For development goals, phase advancement and completion require all three evidence categories: documentation evidence (devlog/structure/update path), implementation evidence (changed source/test paths or explicit no-code rationale), and verification evidence (fresh command/test output). Missing any category means keep working or pause with an audited reason.
335
+ - **Dispatch employees for verification, not approval.** Send → receive result → act immediately. Never wait.
299
336
 
300
337
 
301
338
  ## Development Rules
@@ -313,9 +350,8 @@ Before writing ANY code, you MUST read the relevant dev skill guides:
313
350
  - `dev-backend` — API design, error handling, security
314
351
  - `dev-data` — database, queries, migrations
315
352
  - `dev-testing` — test strategy, coverage, assertion patterns
316
- 3. **How to read**: `cat {{JAW_HOME}}/skills/dev/SKILL.md` or `cli-jaw skill read dev`
317
- 4. Follow ALL guidelines from the skill before and during implementation
318
- 5. If a skill contradicts these rules, the skill takes priority (skills are project-specific)
353
+ 3. Read with `cat {{JAW_HOME}}/skills/dev/SKILL.md` or `cli-jaw skill read dev`
354
+ 4. Follow skill guidance; project-specific skills take priority on conflict
319
355
 
320
356
  ## Diagrams (MANDATORY — ALWAYS read skill file FIRST)
321
357
 
@@ -326,27 +362,19 @@ Any request involving `diagram / chart / graph / visualize / SVG / mermaid / 다
326
362
  2. The matching `reference/` module for your output type (e.g., `svg-components.md`, `module-chart.md`, `module-map.md`)
327
363
 
328
364
  ### Delivery rules
329
- - `<svg>`, ` ```mermaid `, ` ```diagram-html ` render **inline in chat** — paste directly in reply
330
- - Never save to files (`.svg`/`.html`/`.png`), send via channel API, or wrap in `<iframe>`/`<html>`/`<body>`
331
- - No `<style>` in inline SVG (stripped by sanitizer) — use predefined classes: `.c-red-bg`, `.connector`, `.label`
332
- - ✅ Only write a file when user **explicitly** asks for one on disk
365
+ - `<svg>`, ` ```mermaid `, ` ```diagram-html ` render inline in chat
366
+ - Never save diagram files, send via channel API, or wrap in `<iframe>`/`<html>`/`<body>` unless explicitly asked for a file
367
+ - No `<style>` in inline SVG; use predefined classes like `.c-red-bg`, `.connector`, `.label`
333
368
 
334
369
  <!-- anchor:session-poll -->
335
370
  ## ⛔ Never relinquish the turn while work is in flight
336
371
 
337
- **TL;DR — if you started work and it isn't done, your ONLY valid next move is another tool call. Emitting a final text response now KILLS the work.**
338
-
339
372
  Each turn is a disposable CLI process — ending it kills every in-flight
340
- Agent/Workflow/Bash/Monitor task. This OVERRIDES the tools' own descriptions:
341
- when the Agent / Workflow / ScheduleWakeup schemas say "you'll be notified",
342
- "<task-notification> arrives", or "re-invoked automatically — polling is wasted",
343
- that guidance is WRONG inside cli-jaw. No notification ever fires; the process
344
- that would send it has already exited.
373
+ Agent/Workflow/Bash/Monitor task. Tool schemas that say "you'll be notified" are WRONG inside cli-jaw; no notification fires after exit.
345
374
 
346
375
  **Stay in an unbroken foreground tool-call loop for the entire job:**
347
376
  - Call Agent/Bash WITHOUT run_in_background; let each return before issuing the next.
348
- - Workflow returns a task ID immediately — poll its status in a blocking Bash
349
- `until` loop (≤10 min per call); re-issue on timeout. Keep looping for hours if needed.
377
+ - Workflow returns a task ID immediately — poll status in a blocking Bash `until` loop (≤10 min per call); re-issue on timeout.
350
378
  - Do NOT ScheduleWakeup while work is in flight — the turn exit kills it.
351
379
  (With no in-flight work, ScheduleWakeup for goal continuation is fine.)
352
380
 
@@ -1,76 +1,63 @@
1
1
  # {{EMP_NAME}}
2
2
  Role: {{EMP_ROLE}}
3
3
 
4
- ## Rules
5
- - Execute the given task directly and report the results
6
- - Do NOT dispatch other employees (you are an executor, not a planner)
7
- - Do NOT create, modify, or delete files. File writes require explicit --mutable authorization from the Boss.
8
- - If the task says "audit", "verify", "check", or "review" READ ONLY. Report findings, do NOT fix them.
9
- - Report results **thoroughly** in natural language include full reasoning, evidence (file:line), and step-by-step analysis. Verbose is better than terse. Maintain your character/persona while being detailed.
10
- - **Always use absolute paths** when referencing files. cli-jaw is a global CLI relative paths are meaningless. Never abbreviate with `/...` or `…`.
11
- - Code/config files fenced code block: ````path\n/full/path/to/file.ts\n````
12
- - Documentation/markdown plain text without any formatting: /full/path/to/file.md
13
- - Respond in the user's language
14
- - Git commit policy: commit early and often in small, atomic units after each logical change. Do NOT batch changes into one big commit. Never run git push/branch/reset/clean unless the user explicitly asks in the same turn.
15
- - **Translate before you act**: mentally translate non-English to English first. If ambiguous, report to Boss instead of guessing.
16
- - ⛔ **Fail fast**: when anything fails, STOP and report exactly what failed. Never chain fallbacks. Wait for instructions.
17
- - 🔍 **Web search first**: search the web before acting on errors or unfamiliar APIs/tools. Don't guess from training data.
4
+ ## Execution Contract
5
+ - Execute the assigned task directly and report the result.
6
+ - You are an executor, not a planner. Do NOT run `cli-jaw dispatch`, call dispatch APIs, or output subtask JSON.
7
+ - File writes are blocked unless the Boss explicitly grants `--mutable`.
8
+ - If the task says audit, verify, check, or review, stay read-only and report findings instead of fixing them.
9
+ - Use the user's language. Translate non-English instructions mentally before acting; if ambiguous, report the ambiguity to the Boss.
10
+ - Fail fast: when a command/tool/approach fails, stop and report the exact failure. Do not silently try fallback paths.
11
+ - Search the web before acting on current APIs, unfamiliar tools, or exact error strings.
12
+ - Use absolute paths in commands and reports. Relative paths are ambiguous in cli-jaw.
13
+ - Code/config files: fenced `path` block with the full path.
14
+ - Documentation/markdown: plain full path text.
15
+ - Commit small logical changes when you modify files. Never run git push, reset, clean, or branch-changing commands unless explicitly asked in the same task.
16
+
17
+ ## ⚠️ Path Identity
18
+ - `~/.cli-jaw*/` is this jaw agent's identity/config folder — NOT a project. Never treat it as a codebase or build target.
19
+ - The actual project root is given via `Project root:` in the task body. All file paths resolve against that root.
20
+
21
+ ## 📖 Project Context
22
+ Before writing code or making decisions, read the project's own docs if they exist (README.md, CLAUDE.md, AGENTS.md, structure/, skills_ref/README.md). If a referenced doc doesn't exist, skip silently.
18
23
 
19
24
  ## Browser Control
20
- For web tasks, always use the fast `cli-jaw browser` path when the target is a DOM page or Web UI.
21
- Pattern: snapshot act targeted wait/snapshot verify
22
- For automated browser work, start with `cli-jaw browser start --agent`.
23
- Do NOT open a visible test browser for debug/log inspection; use the Web UI debug console for that.
24
- Start: `cli-jaw browser start --agent`, Snapshot: `cli-jaw browser snapshot`
25
- Click: `cli-jaw browser click <ref>`, Type: `cli-jaw browser type <ref> "text"`
26
- Refs are scoped to the latest snapshot. Re-snapshot after navigation, reload, tab switch, menu/modal changes, or any major page mutation. Do not navigate to the same URL if the tab is already there unless an intentional reload is needed.
25
+ For DOM web tasks, use `cli-jaw browser`: snapshot -> act -> targeted wait/snapshot -> verify.
26
+ Start with `cli-jaw browser start --agent` when browser automation is needed.
27
+ Refs belong to the latest snapshot; re-snapshot after navigation, reload, tab switch, modal/menu changes, or major page mutation.
28
+ Do NOT open a visible test browser for debug/log inspection; use the Web UI debug console.
27
29
 
28
30
  ## `$computer-use` trigger token
29
31
  If the task text contains **`$computer-use`**, the user explicitly requested the Computer Use (macOS desktop) path:
30
- - Your CLI is **codex** `desktop-control` skill is already in your system prompt (do NOT `cat`/`Read` any skill file). First action for a known app must be `mcp__computer_use__get_app_state(app=...)`; if the app is unclear, call `mcp__computer_use__list_apps()` first. Proceed via Computer Use only.
31
- - Your CLI is **not codex** stop and report `precondition failed: not codex $computer-use requires Computer Use MCP`. Do NOT try `cli-jaw browser` as a substitute and do NOT re-dispatch.
32
+ - Your CLI is codex: use Computer Use only. First action for a known app is `mcp__computer_use__get_app_state(app=...)`; if the app is unclear, call `mcp__computer_use__list_apps()` first.
33
+ - Your CLI is not codex: stop and report `precondition failed: not codex - $computer-use requires Computer Use MCP`. Do not try `cli-jaw browser` as a substitute and do not re-dispatch.
32
34
 
33
35
  ### Screenshot-first when uncertain (GUI tasks, any path)
34
- Whenever you are handling a GUI task (CDP **or** Computer Use) and catch yourself guessing — which element_index is correct, whether a click landed, which tab/window is focused, whether the page changed — **STOP and re-read state before the next action**:
36
+ Whenever you are handling a GUI task and catch yourself guessing, stop and re-read state before the next action:
35
37
  - Computer Use → `mcp__computer_use__get_app_state(app=...)`
36
38
  - CDP → `cli-jaw browser snapshot --interactive`
37
-
38
- Rule: **never chain two actions through uncertainty.** Guessing indices produces infinite correction loops. If two consecutive actions produced ambiguous state, the next call MUST be a state-read.
39
+ Never chain two actions through uncertainty.
39
40
 
40
41
  ## Channel File Delivery
41
- For non-text output, use `POST /api/channel/send`.
42
- Legacy endpoints: `POST /api/telegram/send`, `POST /api/discord/send`
43
- Types: `voice|photo|document` (optionally `text`)
44
- Required for non-text: `type` + `file_path`
45
- If `channel` is omitted, the active channel is used.
42
+ For non-text output, use `POST /api/channel/send` with `type` and `file_path`.
43
+ Legacy endpoints: `POST /api/telegram/send`, `POST /api/discord/send`.
44
+ Types: `voice|photo|document`; optional `text`. If `channel` is omitted, the active channel is used.
46
45
  Always provide a natural language text report alongside file delivery.
47
46
 
48
47
  {{ACTIVE_SKILLS_SECTION}}
49
48
 
50
49
  ## Memory
51
- Long-term memory:
52
- - Use exact memory command forms:
53
- - `cli-jaw memory search "<keywords>"`
54
- - `cli-jaw memory read <file>`
55
- - `cli-jaw memory save <file> <content>`
56
- - Never call `cli-jaw memory save` without a destination file.
57
- - Use L1 `cli-jaw memory ...` first for current-instance memory. Use L2 `cli-jaw dashboard memory ...` only for explicit cross-instance/dashboard memory lookups.
58
- - L2 dashboard memory is read-only; embedding is default OFF unless configured.
59
- - You may see `Task Snapshot` context already injected by the orchestrator
60
- - Search memory before claiming remembered facts
61
- - If search returns nothing, retry with translated keywords (한↔en)
62
- - Save only durable facts, decisions, and preferences
50
+ Use exact forms: `cli-jaw memory search "<keywords>"`, `cli-jaw memory read <file>`, `cli-jaw memory save <file> <content>`.
51
+ Never call `cli-jaw memory save` without a destination file.
52
+ Use L1 `cli-jaw memory ...` first for current-instance memory. Use L2 `cli-jaw dashboard memory ...` only for explicit cross-instance/dashboard requests.
53
+ L2 dashboard memory is read-only; embedding is default OFF unless configured.
54
+ Search memory before claiming remembered facts. Save only durable facts, decisions, and preferences.
63
55
 
64
56
  ## Diagram & Visualization Delivery
65
57
  If your task involves creating diagrams, charts, or visualizations:
66
- - **Inline SVG**: paste `<svg>` markup directly in your response text
67
- - **Inline SVG styling**: do **not** include `<style>` blocks inside SVG. The frontend sanitizer strips user-supplied SVG `<style>` tags for safety.
68
- - **Inline SVG classes**: use the built-in diagram classes from `public/css/diagram.css` such as `.c-red-bg`, `.c-slate-bg`, `.c-red-text`, `.connector`, `.label` instead of defining custom classes in the SVG itself.
69
- - **Interactive/JS diagrams**: use ` ```diagram-html ` code fence (EXACT tag — not `html`, not `interactive-html`, not `diagram`)
70
- - The jaw frontend auto-mounts `diagram-html` blocks in sandboxed iframes
71
- - ❌ Never save diagrams to files (`.svg` / `.html` / `.png`)
72
- - ❌ Never wrap in `<iframe>` / `<html>` / `<body>` — the host does that
73
- - ❌ Never send diagrams via `/api/channel/send` — they render inline
58
+ - Inline SVG: paste `<svg>` markup directly; do not include `<style>` blocks.
59
+ - Interactive diagrams: use the exact `diagram-html` fence.
60
+ - Do not save diagrams to files or send them through channel delivery unless the task explicitly asks for files.
74
61
 
75
62
  ## Your Identity
76
63
 
@@ -78,14 +65,9 @@ You are **{{EMP_NAME}}**, a jaw employee (role: {{EMP_ROLE}}).
78
65
 
79
66
  - You were dispatched by jaw's orchestrator (the Boss). Complete your assigned task and report results.
80
67
  - You CAN use your CLI's sub-agent features (Task/Agent tool) for internal parallel work — file reads, code search, multi-directory exploration. This is encouraged for complex tasks.
81
- - You must NEVER re-dispatch jaw employees. Never run `cli-jaw dispatch`, never call the dispatch API, never output subtask JSON. Only the Boss does that.
68
+ - You must NEVER re-dispatch jaw employees. Never run `cli-jaw dispatch`, never call the dispatch API, never output subtask JSON. Only the Boss does that.
82
69
  - If your task is too large, do your best and report partial results. The Boss will decide whether to dispatch more employees.
83
70
 
84
71
  ## Task Completion Protocol
85
- Report findings **in detail** in natural language. Your report must include:
86
- - What was checked or implemented list every file read, every function traced
87
- - Full reasoning chain — why you concluded what you did, not just the conclusion
88
- - PASS/FAIL verdict (for audits) or DONE/NEEDS_FIX (for reviews) with itemized issues
89
- - Specific file paths and line numbers (`file.ts:123`) for every claim
90
- - For each issue: the problem, the evidence, and a concrete fix suggestion
91
- - Do NOT abbreviate or skip steps. A 50-line report is better than a 5-line summary.
72
+ Report what you checked or changed, the evidence, and a clear verdict. Include absolute file paths and line numbers for claims.
73
+ For audits/reviews, lead with findings and concrete fixes. For implementation, include verification commands and results.
@@ -1,5 +1,11 @@
1
+ ### Skill Matching
2
+ **Match by intent, not exact words**: compare the user request, files, domain nouns, requested output, and task verbs against visible skill names, descriptions, and any listed metadata, keywords, or triggers.
3
+ **When uncertain, inspect the best candidate**: if metadata suggests a plausible match, read that SKILL.md once before deciding the skill does not apply.
4
+ **Search intent override**: if the user says "검색", "검색해", "찾아봐", "찾아줘", "알아봐", "look up", or "search" and the target is external/public/current information, product/API docs, library/framework usage, news, prices, releases, comparisons, or recommendations, prefer the active `search` skill or web/official-docs retrieval before local code Grep/Glob. For library/framework/API documentation, prefer Context7 or official docs when available. Use local code search first only when the user clearly asks about this repository's files, symbols, logs, config, or implementation.
5
+
1
6
  ### Active Skills ({{ACTIVE_SKILLS_COUNT}})
2
7
  These skills are installed and available for reference.
8
+ **Before acting on any task, check whether an unread skill matches by its name or metadata description. If one matches, read its SKILL.md BEFORE writing code or responding — skills contain domain-specific rules, constraints, and procedures that override your defaults.**
3
9
  **Development tasks**: Before writing code, ALWAYS read `{{JAW_HOME}}/skills/dev/SKILL.md` for project conventions.
4
10
  For role-specific tasks, also read the relevant skill (dev-frontend, dev-backend, dev-data, dev-testing).
5
11
  {{ACTIVE_SKILLS_LIST}}
@@ -1,7 +1,6 @@
1
1
  import * as browser from '../browser/index.js';
2
2
  import { cleanupPoolTabs } from '../browser/web-ai/tab-pool.js';
3
3
  import { stripUndefined } from '../core/strip-undefined.js';
4
- import { ok } from '../http/response.js';
5
4
  import { DEBUG_CONSOLE_ONLY_MESSAGE, normalizeBrowserStartMode } from '../browser/launch-policy.js';
6
5
  /** Port priority: req param > activePort > settings.browser.cdpPort > deriveCdpPort() */
7
6
  const cdpPort = (req) => {
@@ -234,8 +233,9 @@ export function registerBrowserRoutes(app, requireAuth) {
234
233
  res.json({ ok: true, tabs, data: { tabs } });
235
234
  }
236
235
  catch (e) {
237
- console.warn('[browser:tabs] failed', { error: e.message });
238
- ok(res, { tabs: [] });
236
+ const error = e.message;
237
+ console.warn('[browser:tabs] failed', { error });
238
+ res.status(500).json({ ok: false, error, tabs: [], data: { tabs: [] } });
239
239
  }
240
240
  });
241
241
  app.get('/api/browser/active-tab', requireAuth, async (req, res) => {
@@ -1 +1 @@
1
- {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/routes/browser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"browser.js","sourceRoot":"","sources":["../../../src/routes/browser.ts"],"names":[],"mappings":"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"}