takt 0.1.7 → 0.2.1

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 (156) hide show
  1. package/README.md +179 -43
  2. package/dist/agents/runner.d.ts +3 -1
  3. package/dist/agents/runner.d.ts.map +1 -1
  4. package/dist/agents/runner.js +15 -0
  5. package/dist/agents/runner.js.map +1 -1
  6. package/dist/claude/client.d.ts +3 -1
  7. package/dist/claude/client.d.ts.map +1 -1
  8. package/dist/claude/client.js +17 -0
  9. package/dist/claude/client.js.map +1 -1
  10. package/dist/cli.d.ts +9 -1
  11. package/dist/cli.d.ts.map +1 -1
  12. package/dist/cli.js +73 -18
  13. package/dist/cli.js.map +1 -1
  14. package/dist/commands/addTask.d.ts +15 -0
  15. package/dist/commands/addTask.d.ts.map +1 -0
  16. package/dist/commands/addTask.js +119 -0
  17. package/dist/commands/addTask.js.map +1 -0
  18. package/dist/commands/help.d.ts.map +1 -1
  19. package/dist/commands/help.js +18 -5
  20. package/dist/commands/help.js.map +1 -1
  21. package/dist/commands/index.d.ts +4 -0
  22. package/dist/commands/index.d.ts.map +1 -1
  23. package/dist/commands/index.js +4 -0
  24. package/dist/commands/index.js.map +1 -1
  25. package/dist/commands/refreshBuiltin.d.ts +11 -0
  26. package/dist/commands/refreshBuiltin.d.ts.map +1 -0
  27. package/dist/commands/refreshBuiltin.js +37 -0
  28. package/dist/commands/refreshBuiltin.js.map +1 -0
  29. package/dist/commands/reviewTasks.d.ts +32 -0
  30. package/dist/commands/reviewTasks.d.ts.map +1 -0
  31. package/dist/commands/reviewTasks.js +198 -0
  32. package/dist/commands/reviewTasks.js.map +1 -0
  33. package/dist/commands/taskExecution.d.ts +24 -1
  34. package/dist/commands/taskExecution.d.ts.map +1 -1
  35. package/dist/commands/taskExecution.js +100 -36
  36. package/dist/commands/taskExecution.js.map +1 -1
  37. package/dist/commands/watchTasks.d.ts +12 -0
  38. package/dist/commands/watchTasks.d.ts.map +1 -0
  39. package/dist/commands/watchTasks.js +68 -0
  40. package/dist/commands/watchTasks.js.map +1 -0
  41. package/dist/commands/workflowExecution.d.ts +5 -1
  42. package/dist/commands/workflowExecution.d.ts.map +1 -1
  43. package/dist/commands/workflowExecution.js +35 -12
  44. package/dist/commands/workflowExecution.js.map +1 -1
  45. package/dist/config/initialization.d.ts +2 -0
  46. package/dist/config/initialization.d.ts.map +1 -1
  47. package/dist/config/initialization.js +12 -2
  48. package/dist/config/initialization.js.map +1 -1
  49. package/dist/config/paths.d.ts +1 -1
  50. package/dist/config/paths.d.ts.map +1 -1
  51. package/dist/config/paths.js +1 -1
  52. package/dist/config/paths.js.map +1 -1
  53. package/dist/config/sessionStore.d.ts +5 -0
  54. package/dist/config/sessionStore.d.ts.map +1 -1
  55. package/dist/config/sessionStore.js +1 -1
  56. package/dist/config/sessionStore.js.map +1 -1
  57. package/dist/config/workflowLoader.d.ts.map +1 -1
  58. package/dist/config/workflowLoader.js +1 -0
  59. package/dist/config/workflowLoader.js.map +1 -1
  60. package/dist/models/schemas.d.ts +22 -0
  61. package/dist/models/schemas.d.ts.map +1 -1
  62. package/dist/models/schemas.js +8 -0
  63. package/dist/models/schemas.js.map +1 -1
  64. package/dist/models/types.d.ts +8 -2
  65. package/dist/models/types.d.ts.map +1 -1
  66. package/dist/prompt/index.d.ts +60 -11
  67. package/dist/prompt/index.d.ts.map +1 -1
  68. package/dist/prompt/index.js +246 -72
  69. package/dist/prompt/index.js.map +1 -1
  70. package/dist/providers/claude.d.ts.map +1 -1
  71. package/dist/providers/claude.js +2 -0
  72. package/dist/providers/claude.js.map +1 -1
  73. package/dist/providers/index.d.ts +3 -1
  74. package/dist/providers/index.d.ts.map +1 -1
  75. package/dist/providers/index.js.map +1 -1
  76. package/dist/resources/index.d.ts +5 -0
  77. package/dist/resources/index.d.ts.map +1 -1
  78. package/dist/resources/index.js +33 -9
  79. package/dist/resources/index.js.map +1 -1
  80. package/dist/task/autoCommit.d.ts +28 -0
  81. package/dist/task/autoCommit.d.ts.map +1 -0
  82. package/dist/task/autoCommit.js +68 -0
  83. package/dist/task/autoCommit.js.map +1 -0
  84. package/dist/task/display.d.ts.map +1 -1
  85. package/dist/task/display.js +19 -1
  86. package/dist/task/display.js.map +1 -1
  87. package/dist/task/index.d.ts +5 -0
  88. package/dist/task/index.d.ts.map +1 -1
  89. package/dist/task/index.js +5 -0
  90. package/dist/task/index.js.map +1 -1
  91. package/dist/task/parser.d.ts +33 -0
  92. package/dist/task/parser.d.ts.map +1 -0
  93. package/dist/task/parser.js +86 -0
  94. package/dist/task/parser.js.map +1 -0
  95. package/dist/task/runner.d.ts +6 -0
  96. package/dist/task/runner.d.ts.map +1 -1
  97. package/dist/task/runner.js +33 -42
  98. package/dist/task/runner.js.map +1 -1
  99. package/dist/task/schema.d.ts +32 -0
  100. package/dist/task/schema.d.ts.map +1 -0
  101. package/dist/task/schema.js +31 -0
  102. package/dist/task/schema.js.map +1 -0
  103. package/dist/task/watcher.d.ts +33 -0
  104. package/dist/task/watcher.d.ts.map +1 -0
  105. package/dist/task/watcher.js +69 -0
  106. package/dist/task/watcher.js.map +1 -0
  107. package/dist/task/worktree.d.ts +70 -0
  108. package/dist/task/worktree.d.ts.map +1 -0
  109. package/dist/task/worktree.js +221 -0
  110. package/dist/task/worktree.js.map +1 -0
  111. package/dist/utils/debug.d.ts +6 -1
  112. package/dist/utils/debug.d.ts.map +1 -1
  113. package/dist/utils/debug.js +30 -24
  114. package/dist/utils/debug.js.map +1 -1
  115. package/dist/utils/index.d.ts +1 -0
  116. package/dist/utils/index.d.ts.map +1 -1
  117. package/dist/utils/index.js +1 -0
  118. package/dist/utils/index.js.map +1 -1
  119. package/dist/utils/session.d.ts +20 -0
  120. package/dist/utils/session.d.ts.map +1 -1
  121. package/dist/utils/session.js +32 -3
  122. package/dist/utils/session.js.map +1 -1
  123. package/dist/utils/slug.d.ts +12 -0
  124. package/dist/utils/slug.d.ts.map +1 -0
  125. package/dist/utils/slug.js +18 -0
  126. package/dist/utils/slug.js.map +1 -0
  127. package/dist/utils/text.d.ts +22 -0
  128. package/dist/utils/text.d.ts.map +1 -0
  129. package/dist/utils/text.js +54 -0
  130. package/dist/utils/text.js.map +1 -0
  131. package/dist/workflow/engine.d.ts +5 -6
  132. package/dist/workflow/engine.d.ts.map +1 -1
  133. package/dist/workflow/engine.js +32 -12
  134. package/dist/workflow/engine.js.map +1 -1
  135. package/dist/workflow/index.d.ts +2 -2
  136. package/dist/workflow/index.d.ts.map +1 -1
  137. package/dist/workflow/index.js +2 -2
  138. package/dist/workflow/index.js.map +1 -1
  139. package/dist/workflow/instruction-builder.d.ts +31 -2
  140. package/dist/workflow/instruction-builder.d.ts.map +1 -1
  141. package/dist/workflow/instruction-builder.js +69 -1
  142. package/dist/workflow/instruction-builder.js.map +1 -1
  143. package/dist/workflow/transitions.d.ts.map +1 -1
  144. package/dist/workflow/transitions.js +1 -0
  145. package/dist/workflow/transitions.js.map +1 -1
  146. package/dist/workflow/types.d.ts +5 -1
  147. package/dist/workflow/types.d.ts.map +1 -1
  148. package/package.json +3 -2
  149. package/resources/global/en/workflows/default.yaml +22 -1
  150. package/resources/global/en/workflows/simple.yaml +18 -1
  151. package/resources/global/ja/agents/default/ai-reviewer.md +24 -1
  152. package/resources/global/ja/agents/default/architect.md +157 -4
  153. package/resources/global/ja/agents/default/coder.md +1 -0
  154. package/resources/global/ja/workflows/default.yaml +38 -1
  155. package/resources/global/ja/workflows/expert-review.yaml +169 -10
  156. package/resources/global/ja/workflows/simple.yaml +18 -1
package/README.md CHANGED
@@ -23,26 +23,40 @@ npm install -g takt
23
23
  ## Quick Start
24
24
 
25
25
  ```bash
26
- # Run a task (will prompt for workflow selection)
26
+ # Run a task (will prompt for workflow selection and optional worktree creation)
27
27
  takt "Add a login feature"
28
28
 
29
- # Switch workflow
30
- takt /switch
29
+ # Add a task to the queue
30
+ takt /add-task "Fix the login bug"
31
31
 
32
32
  # Run all pending tasks
33
33
  takt /run-tasks
34
+
35
+ # Watch for tasks and auto-execute
36
+ takt /watch
37
+
38
+ # Review worktree results (merge or delete)
39
+ takt /review-tasks
40
+
41
+ # Switch workflow
42
+ takt /switch
34
43
  ```
35
44
 
36
45
  ## Commands
37
46
 
38
- | Command | Description |
39
- |---------|-------------|
40
- | `takt "task"` | Execute task with workflow selection |
41
- | `takt -r "task"` | Execute task, resuming previous session |
42
- | `takt /run-tasks` | Run all pending tasks |
43
- | `takt /switch` | Switch workflow interactively |
44
- | `takt /clear` | Clear agent conversation sessions |
45
- | `takt /help` | Show help |
47
+ | Command | Alias | Description |
48
+ |---------|-------|-------------|
49
+ | `takt "task"` | | Execute task with current workflow (continues session) |
50
+ | `takt -r "task"` | | Execute task, resuming previous session |
51
+ | `takt /run-tasks` | `/run` | Run all pending tasks from `.takt/tasks/` |
52
+ | `takt /watch` | | Watch `.takt/tasks/` and auto-execute tasks (stays resident) |
53
+ | `takt /add-task` | `/add` | Add a new task interactively (YAML format, multiline supported) |
54
+ | `takt /review-tasks` | `/review` | Review worktree task results (try merge, merge & cleanup, or delete) |
55
+ | `takt /switch` | | Switch workflow interactively |
56
+ | `takt /clear` | | Clear agent conversation sessions |
57
+ | `takt /refresh-builtin` | | Update builtin agents/workflows to latest version |
58
+ | `takt /config` | | Display current configuration |
59
+ | `takt /help` | | Show help |
46
60
 
47
61
  ## Workflows
48
62
 
@@ -88,11 +102,28 @@ steps:
88
102
  next_step: implement
89
103
  ```
90
104
 
105
+ ## Built-in Workflows
106
+
107
+ TAKT ships with several built-in workflows:
108
+
109
+ | Workflow | Description |
110
+ |----------|-------------|
111
+ | `default` | Full development workflow: plan → implement → architect review → AI review → security review → supervisor approval. Includes fix loops for each review stage. |
112
+ | `simple` | Simplified version of default: plan → implement → architect review → AI review → supervisor. No intermediate fix steps. |
113
+ | `research` | Research workflow: planner → digger → supervisor. Autonomously researches topics without asking questions. |
114
+ | `expert-review` | Comprehensive review with domain experts: CQRS+ES, Frontend, AI, Security, QA reviews with fix loops. |
115
+ | `magi` | Deliberation system inspired by Evangelion. Three AI personas (MELCHIOR, BALTHASAR, CASPER) analyze and vote. |
116
+
117
+ Switch between workflows with `takt /switch`.
118
+
91
119
  ## Built-in Agents
92
120
 
93
121
  - **coder** - Implements features and fixes bugs
94
122
  - **architect** - Reviews code and provides feedback
95
123
  - **supervisor** - Final verification and approval
124
+ - **planner** - Task analysis and implementation planning
125
+ - **ai-reviewer** - AI-generated code quality review
126
+ - **security** - Security vulnerability assessment
96
127
 
97
128
  ## Custom Agents
98
129
 
@@ -149,6 +180,17 @@ Available Codex models:
149
180
  ├── config.yaml # Global config (provider, model, workflows, etc.)
150
181
  ├── workflows/ # Workflow definitions
151
182
  └── agents/ # Agent prompt files
183
+
184
+ .takt/ # Project-level config
185
+ ├── agents.yaml # Custom agent definitions
186
+ ├── tasks/ # Pending task files (.yaml, .md)
187
+ ├── completed/ # Completed tasks with reports
188
+ ├── worktrees/ # Git worktrees for isolated task execution
189
+ ├── reports/ # Execution reports (auto-generated)
190
+ └── logs/ # Session logs (incremental)
191
+ ├── latest.json # Pointer to current/latest session
192
+ ├── previous.json # Pointer to previous session
193
+ └── {sessionId}.json # Full session log per workflow run
152
194
  ```
153
195
 
154
196
  ### Global Configuration
@@ -189,21 +231,14 @@ takt -r "The bug occurs when the password contains special characters"
189
231
 
190
232
  The `-r` flag preserves the agent's conversation history, allowing for natural back-and-forth interaction.
191
233
 
192
- ### Playing with MAGI System
234
+ ### Interactive Workflow
193
235
 
194
- MAGI is a deliberation system inspired by Evangelion. Three AI personas analyze your question from different perspectives and vote:
236
+ When running `takt "task"`, you are prompted to:
195
237
 
196
- ```bash
197
- # Select 'magi' workflow when prompted
198
- takt "Should we migrate from REST to GraphQL?"
199
- ```
200
-
201
- The three MAGI personas:
202
- - **MELCHIOR-1** (Scientist): Logical, data-driven analysis
203
- - **BALTHASAR-2** (Nurturer): Team and human-centered perspective
204
- - **CASPER-3** (Pragmatist): Practical, real-world considerations
238
+ 1. **Select a workflow** - Choose from available workflows (arrow keys, ESC to cancel)
239
+ 2. **Create a worktree** (optional) - Optionally run the task in an isolated git worktree
205
240
 
206
- Each persona votes: APPROVE, REJECT, or CONDITIONAL. The final decision is made by majority vote.
241
+ This interactive flow ensures each task runs with the right workflow and isolation level.
207
242
 
208
243
  ### Adding Custom Workflows
209
244
 
@@ -268,27 +303,33 @@ You are a code reviewer focused on security.
268
303
  - [REVIEWER:REJECT] if issues found (list them)
269
304
  ```
270
305
 
271
- ### Using `/run-tasks` for Batch Processing
306
+ ### Task Management
272
307
 
273
- The `/run-tasks` command executes all task files in `.takt/tasks/` directory:
308
+ TAKT supports batch task processing through task files in `.takt/tasks/`. Both `.yaml`/`.yml` and `.md` file formats are supported.
309
+
310
+ #### Adding Tasks with `/add-task`
274
311
 
275
312
  ```bash
276
- # Create task files as you think of them
277
- echo "Add unit tests for the auth module" > .takt/tasks/001-add-tests.md
278
- echo "Refactor the database layer" > .takt/tasks/002-refactor-db.md
279
- echo "Update API documentation" > .takt/tasks/003-update-docs.md
313
+ # Quick add (no worktree)
314
+ takt /add-task "Add authentication feature"
280
315
 
281
- # Run all pending tasks
282
- takt /run-tasks
316
+ # Interactive mode (prompts for worktree, branch, workflow options)
317
+ takt /add-task
283
318
  ```
284
319
 
285
- **How it works:**
286
- - Tasks are executed in alphabetical order (use prefixes like `001-`, `002-` for ordering)
287
- - Each task file should contain a description of what needs to be done
288
- - Completed tasks are moved to `.takt/completed/` with execution reports
289
- - New tasks added during execution will be picked up dynamically
320
+ #### Task File Formats
290
321
 
291
- **Task file format:**
322
+ **YAML format** (recommended, supports worktree/branch/workflow options):
323
+
324
+ ```yaml
325
+ # .takt/tasks/add-auth.yaml
326
+ task: "Add authentication feature"
327
+ worktree: true # Run in isolated git worktree
328
+ branch: "feat/add-auth" # Branch name (auto-generated if omitted)
329
+ workflow: "default" # Workflow override (uses current if omitted)
330
+ ```
331
+
332
+ **Markdown format** (simple, backward compatible):
292
333
 
293
334
  ```markdown
294
335
  # .takt/tasks/add-login-feature.md
@@ -301,10 +342,58 @@ Requirements:
301
342
  - Error handling for failed attempts
302
343
  ```
303
344
 
304
- This is perfect for:
305
- - Brainstorming sessions where you capture ideas as files
306
- - Breaking down large features into smaller tasks
307
- - Automated pipelines that generate task files
345
+ #### Git Worktree Isolation
346
+
347
+ YAML task files can specify `worktree` to run each task in an isolated git worktree, keeping the main working directory clean:
348
+
349
+ - `worktree: true` - Auto-create at `.takt/worktrees/{timestamp}-{task-slug}/`
350
+ - `worktree: "/path/to/dir"` - Create at specified path
351
+ - `branch: "feat/xxx"` - Use specified branch (auto-generated as `takt/{timestamp}-{slug}` if omitted)
352
+ - Omit `worktree` - Run in current working directory (default)
353
+
354
+ When a worktree task completes successfully, TAKT automatically commits all changes (`auto-commit`). Use `takt /review-tasks` to review, try-merge, or delete completed worktree branches.
355
+
356
+ #### Running Tasks with `/run-tasks`
357
+
358
+ ```bash
359
+ takt /run-tasks
360
+ ```
361
+
362
+ - Tasks are executed in alphabetical order (use prefixes like `001-`, `002-` for ordering)
363
+ - Completed tasks are moved to `.takt/completed/` with execution reports
364
+ - New tasks added during execution will be picked up dynamically
365
+
366
+ #### Watching Tasks with `/watch`
367
+
368
+ ```bash
369
+ takt /watch
370
+ ```
371
+
372
+ Watch mode polls `.takt/tasks/` for new task files and auto-executes them as they appear. The process stays resident until `Ctrl+C`. This is useful for:
373
+ - CI/CD pipelines that generate task files
374
+ - Automated workflows where tasks are added by external processes
375
+ - Long-running development sessions where tasks are queued over time
376
+
377
+ #### Reviewing Worktree Results with `/review-tasks`
378
+
379
+ ```bash
380
+ takt /review-tasks
381
+ ```
382
+
383
+ Lists all `takt/`-prefixed worktree branches with file change counts. For each branch you can:
384
+ - **Try merge** - Attempt merge into main (dry-run check, then actual merge)
385
+ - **Merge & cleanup** - Merge and remove the worktree
386
+ - **Delete** - Remove the worktree and branch without merging
387
+
388
+ ### Session Logs
389
+
390
+ TAKT writes session logs incrementally to `.takt/logs/`. Logs are saved at workflow start, after each step, and at workflow end — so even if the process crashes mid-execution, partial logs are preserved.
391
+
392
+ - `.takt/logs/latest.json` - Pointer to the current (or most recent) session
393
+ - `.takt/logs/previous.json` - Pointer to the previous session
394
+ - `.takt/logs/{sessionId}.json` - Full session log with step history
395
+
396
+ Agents can read `previous.json` to pick up context from a prior run (e.g., when resuming with `takt "続けて"`).
308
397
 
309
398
  ### Workflow Variables
310
399
 
@@ -313,11 +402,57 @@ Available variables in `instruction_template`:
313
402
  | Variable | Description |
314
403
  |----------|-------------|
315
404
  | `{task}` | Original user request |
316
- | `{iteration}` | Current iteration number |
317
- | `{max_iterations}` | Maximum iterations |
405
+ | `{iteration}` | Workflow-wide turn count (total steps executed) |
406
+ | `{max_iterations}` | Maximum iterations allowed |
407
+ | `{step_iteration}` | Per-step iteration count (how many times THIS step has run) |
318
408
  | `{previous_response}` | Previous step's output (requires `pass_previous_response: true`) |
319
409
  | `{user_inputs}` | Additional user inputs during workflow |
320
410
  | `{git_diff}` | Current git diff (uncommitted changes) |
411
+ | `{report_dir}` | Report directory name (e.g., `20250126-143052-task-summary`) |
412
+
413
+ ### Designing Workflows
414
+
415
+ Each workflow step requires three key elements:
416
+
417
+ **1. Agent** - A Markdown file containing the system prompt:
418
+
419
+ ```yaml
420
+ agent: ~/.takt/agents/default/coder.md # Path to agent prompt file
421
+ agent_name: coder # Display name (optional)
422
+ ```
423
+
424
+ **2. Status Rules** - Define how the agent signals completion. Agents output status markers like `[CODER:DONE]` or `[ARCHITECT:REJECT]` that TAKT detects to drive transitions:
425
+
426
+ ```yaml
427
+ status_rules_prompt: |
428
+ Your final output MUST include a status tag:
429
+ - `[CODER:DONE]` if implementation is complete
430
+ - `[CODER:BLOCKED]` if you cannot proceed
431
+ ```
432
+
433
+ **3. Transitions** - Route to the next step based on status:
434
+
435
+ ```yaml
436
+ transitions:
437
+ - condition: done # Maps to status tag DONE
438
+ next_step: review # Go to review step
439
+ - condition: blocked # Maps to status tag BLOCKED
440
+ next_step: ABORT # End workflow with failure
441
+ ```
442
+
443
+ Available transition conditions: `done`, `blocked`, `approved`, `rejected`, `improve`, `answer`, `always`.
444
+ Special next_step values: `COMPLETE` (success), `ABORT` (failure).
445
+
446
+ **Step options:**
447
+
448
+ | Option | Default | Description |
449
+ |--------|---------|-------------|
450
+ | `pass_previous_response` | `true` | Pass previous step's output to `{previous_response}` |
451
+ | `on_no_status` | - | Behavior when no status is detected: `complete`, `continue`, `stay` |
452
+ | `allowed_tools` | - | List of tools the agent can use (Read, Glob, Grep, Edit, Write, Bash, etc.) |
453
+ | `provider` | - | Override provider for this step (`claude` or `codex`) |
454
+ | `model` | - | Override model for this step |
455
+ | `permission_mode` | `default` | Permission mode: `default`, `acceptEdits`, or `bypassPermissions` |
321
456
 
322
457
  ## API Usage
323
458
 
@@ -375,6 +510,7 @@ This ensures the project works correctly in a clean Node.js 20 environment.
375
510
  - [Agent Guide](./docs/agents.md) - Configure custom agents
376
511
  - [Changelog](./CHANGELOG.md) - Version history
377
512
  - [Security Policy](./SECURITY.md) - Vulnerability reporting
513
+ - [Blog: TAKT - AI Agent Orchestration](https://zenn.dev/nrs/articles/c6842288a526d7) - Design philosophy and practical usage guide (Japanese)
378
514
 
379
515
  ## License
380
516
 
@@ -2,7 +2,7 @@
2
2
  * Agent execution runners
3
3
  */
4
4
  import { type StreamCallback, type PermissionHandler, type AskUserQuestionHandler } from '../claude/process.js';
5
- import type { AgentResponse, CustomAgentConfig } from '../models/types.js';
5
+ import type { AgentResponse, CustomAgentConfig, PermissionMode } from '../models/types.js';
6
6
  export type { StreamCallback };
7
7
  /** Common options for running agents */
8
8
  export interface RunAgentOptions {
@@ -16,6 +16,8 @@ export interface RunAgentOptions {
16
16
  allowedTools?: string[];
17
17
  /** Status output rules to inject into system prompt */
18
18
  statusRulesPrompt?: string;
19
+ /** Permission mode for tool execution (from workflow step) */
20
+ permissionMode?: PermissionMode;
19
21
  onStream?: StreamCallback;
20
22
  onPermissionRequest?: PermissionHandler;
21
23
  onAskUserQuestion?: AskUserQuestionHandler;
@@ -1 +1 @@
1
- {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agents/runner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAKhH,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAE3E,YAAY,EAAE,cAAc,EAAE,CAAC;AAE/B,wCAAwC;AACxC,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IACvC,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACxC,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AA6BD,sCAAsC;AACtC,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAoB9C;AAED,yBAAyB;AACzB,wBAAsB,cAAc,CAClC,WAAW,EAAE,iBAAiB,EAC9B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,aAAa,CAAC,CAyDxB;AAqCD,mCAAmC;AACnC,wBAAsB,QAAQ,CAC5B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,aAAa,CAAC,CA0CxB"}
1
+ {"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../../src/agents/runner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAKhH,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAK3F,YAAY,EAAE,cAAc,EAAE,CAAC;AAE/B,wCAAwC;AACxC,MAAM,WAAW,eAAe;IAC9B,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,QAAQ,GAAG,OAAO,GAAG,MAAM,CAAC;IACvC,yCAAyC;IACzC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uCAAuC;IACvC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,uDAAuD;IACvD,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,8DAA8D;IAC9D,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACxC,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AA6BD,sCAAsC;AACtC,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAoB9C;AAED,yBAAyB;AACzB,wBAAsB,cAAc,CAClC,WAAW,EAAE,iBAAiB,EAC9B,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,aAAa,CAAC,CA4DxB;AAqCD,mCAAmC;AACnC,wBAAsB,QAAQ,CAC5B,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,eAAe,GACvB,OAAO,CAAC,aAAa,CAAC,CAoDxB"}
@@ -9,6 +9,8 @@ import { loadCustomAgents, loadAgentPrompt } from '../config/loader.js';
9
9
  import { loadGlobalConfig } from '../config/globalConfig.js';
10
10
  import { loadProjectConfig } from '../config/projectConfig.js';
11
11
  import { getProvider } from '../providers/index.js';
12
+ import { createLogger } from '../utils/debug.js';
13
+ const log = createLogger('runner');
12
14
  function resolveProvider(cwd, options, agentConfig) {
13
15
  // Mock provider must be explicitly specified (no fallback)
14
16
  if (options?.provider)
@@ -76,6 +78,7 @@ export async function runCustomAgent(agentConfig, task, options) {
76
78
  sessionId: options.sessionId,
77
79
  allowedTools,
78
80
  model: resolveModel(options.cwd, options, agentConfig),
81
+ permissionMode: options.permissionMode,
79
82
  onStream: options.onStream,
80
83
  onPermissionRequest: options.onPermissionRequest,
81
84
  onAskUserQuestion: options.onAskUserQuestion,
@@ -90,6 +93,7 @@ export async function runCustomAgent(agentConfig, task, options) {
90
93
  sessionId: options.sessionId,
91
94
  allowedTools,
92
95
  model: resolveModel(options.cwd, options, agentConfig),
96
+ permissionMode: options.permissionMode,
93
97
  onStream: options.onStream,
94
98
  onPermissionRequest: options.onPermissionRequest,
95
99
  onAskUserQuestion: options.onAskUserQuestion,
@@ -111,6 +115,7 @@ export async function runCustomAgent(agentConfig, task, options) {
111
115
  allowedTools,
112
116
  model: resolveModel(options.cwd, options, agentConfig),
113
117
  statusPatterns: agentConfig.statusPatterns,
118
+ permissionMode: options.permissionMode,
114
119
  onStream: options.onStream,
115
120
  onPermissionRequest: options.onPermissionRequest,
116
121
  onAskUserQuestion: options.onAskUserQuestion,
@@ -151,6 +156,15 @@ function extractAgentName(agentSpec) {
151
156
  /** Run an agent by name or path */
152
157
  export async function runAgent(agentSpec, task, options) {
153
158
  const agentName = extractAgentName(agentSpec);
159
+ log.debug('Running agent', {
160
+ agentSpec,
161
+ agentName,
162
+ provider: options.provider,
163
+ model: options.model,
164
+ hasAgentPath: !!options.agentPath,
165
+ hasSession: !!options.sessionId,
166
+ permissionMode: options.permissionMode,
167
+ });
154
168
  // If agentPath is provided (from workflow), use it to load prompt
155
169
  if (options.agentPath) {
156
170
  if (!existsSync(options.agentPath)) {
@@ -169,6 +183,7 @@ export async function runAgent(agentSpec, task, options) {
169
183
  allowedTools: options.allowedTools,
170
184
  model: resolveModel(options.cwd, options),
171
185
  systemPrompt,
186
+ permissionMode: options.permissionMode,
172
187
  onStream: options.onStream,
173
188
  onPermissionRequest: options.onPermissionRequest,
174
189
  onAskUserQuestion: options.onAskUserQuestion,
@@ -1 +1 @@
1
- {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/agents/runner.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EACL,eAAe,EACf,eAAe,GAEhB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,WAAW,EAA+C,MAAM,uBAAuB,CAAC;AAwBjG,SAAS,eAAe,CAAC,GAAW,EAAE,OAAyB,EAAE,WAA+B;IAC9F,2DAA2D;IAC3D,IAAI,OAAO,EAAE,QAAQ;QAAE,OAAO,OAAO,CAAC,QAAQ,CAAC;IAC/C,IAAI,WAAW,EAAE,QAAQ;QAAE,OAAO,WAAW,CAAC,QAAQ,CAAC;IACvD,MAAM,aAAa,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAAC;IAC7C,IAAI,aAAa,CAAC,QAAQ;QAAE,OAAO,aAAa,CAAC,QAAQ,CAAC;IAC1D,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;QACxC,IAAI,YAAY,CAAC,QAAQ;YAAE,OAAO,YAAY,CAAC,QAAQ,CAAC;IAC1D,CAAC;IAAC,MAAM,CAAC;QACP,+CAA+C;IACjD,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,YAAY,CAAC,GAAW,EAAE,OAAyB,EAAE,WAA+B;IAC3F,IAAI,OAAO,EAAE,KAAK;QAAE,OAAO,OAAO,CAAC,KAAK,CAAC;IACzC,IAAI,WAAW,EAAE,KAAK;QAAE,OAAO,WAAW,CAAC,KAAK,CAAC;IACjD,IAAI,CAAC;QACH,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;QACxC,IAAI,YAAY,CAAC,KAAK;YAAE,OAAO,YAAY,CAAC,KAAK,CAAC;IACpD,CAAC;IAAC,MAAM,CAAC;QACP,+BAA+B;IACjC,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,sCAAsC;AACtC,MAAM,UAAU,UAAU,CAAC,GAAW;IACpC,IAAI,CAAC;QACH,kEAAkE;QAClE,IAAI,CAAC;YACH,QAAQ,CAAC,oBAAoB,EAAE,EAAE,GAAG,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;QAC5E,CAAC;QAAC,MAAM,CAAC;YACP,oCAAoC;YACpC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,IAAI,GAAG,QAAQ,CAAC,eAAe,EAAE;YACrC,GAAG;YACH,QAAQ,EAAE,OAAO;YACjB,SAAS,EAAE,IAAI,GAAG,IAAI,GAAG,EAAE,EAAE,OAAO;YACpC,KAAK,EAAE,MAAM;SACd,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,IAAI,EAAE,CAAC;IACrB,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;AACH,CAAC;AAED,yBAAyB;AACzB,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,WAA8B,EAC9B,IAAY,EACZ,OAAwB;IAExB,MAAM,YAAY,GAAG,OAAO,CAAC,YAAY,IAAI,WAAW,CAAC,YAAY,CAAC;IAEtE,0CAA0C;IAC1C,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAsB;YACrC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,YAAY;YACZ,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC;YACtD,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;YAChD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;YAC5C,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;SAC7C,CAAC;QACF,OAAO,eAAe,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IACrE,CAAC;IAED,0CAA0C;IAC1C,IAAI,WAAW,CAAC,WAAW,EAAE,CAAC;QAC5B,MAAM,WAAW,GAAsB;YACrC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,YAAY;YACZ,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC;YACtD,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;YAChD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;YAC5C,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;SAC7C,CAAC;QACF,OAAO,eAAe,CAAC,WAAW,CAAC,WAAW,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IACrE,CAAC;IAED,2BAA2B;IAC3B,IAAI,YAAY,GAAG,eAAe,CAAC,WAAW,CAAC,CAAC;IAEhD,kCAAkC;IAClC,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;QAC9B,YAAY,GAAG,GAAG,YAAY,OAAO,OAAO,CAAC,iBAAiB,EAAE,CAAC;IACnE,CAAC;IAED,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;IACxE,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;IAE3C,MAAM,WAAW,GAAwB;QACvC,GAAG,EAAE,OAAO,CAAC,GAAG;QAChB,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,YAAY;QACZ,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC;QACtD,cAAc,EAAE,WAAW,CAAC,cAAc;QAC1C,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;QAC5C,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;KAC7C,CAAC;IAEF,OAAO,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;AAChF,CAAC;AAED;;GAEG;AACH,SAAS,uBAAuB,CAAC,SAAiB;IAChD,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,CAAC;QAC3B,MAAM,IAAI,KAAK,CAAC,yBAAyB,SAAS,EAAE,CAAC,CAAC;IACxD,CAAC;IACD,OAAO,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,gBAAgB,CAAC,SAAiB;IACzC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,MAAM,IAAI,GAAG,QAAQ,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACxC,MAAM,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAEzC,qDAAqD;IACrD,oFAAoF;IACpF,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,GAAG,EAAE,CAAC;QACzD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,mCAAmC;AACnC,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,SAAiB,EACjB,IAAY,EACZ,OAAwB;IAExB,MAAM,SAAS,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAE9C,kEAAkE;IAClE,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,yBAAyB,OAAO,CAAC,SAAS,EAAE,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,YAAY,GAAG,uBAAuB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAE9D,kCAAkC;QAClC,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAC9B,YAAY,GAAG,GAAG,YAAY,OAAO,OAAO,CAAC,iBAAiB,EAAE,CAAC;QACnE,CAAC;QAED,MAAM,YAAY,GAAG,eAAe,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;QAC3D,MAAM,QAAQ,GAAG,WAAW,CAAC,YAAY,CAAC,CAAC;QAE3C,MAAM,WAAW,GAAwB;YACvC,GAAG,EAAE,OAAO,CAAC,GAAG;YAChB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC;YACzC,YAAY;YACZ,QAAQ,EAAE,OAAO,CAAC,QAAQ;YAC1B,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;YAChD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;YAC5C,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;SAC7C,CAAC;QAEF,OAAO,QAAQ,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC;IACrD,CAAC;IAED,0CAA0C;IAC1C,MAAM,YAAY,GAAG,gBAAgB,EAAE,CAAC;IACxC,MAAM,WAAW,GAAG,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAEhD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,cAAc,CAAC,WAAW,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,kBAAkB,SAAS,EAAE,CAAC,CAAC;AACjD,CAAC"}
1
+ {"version":3,"file":"runner.js","sourceRoot":"","sources":["../../src/agents/runner.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@
5
5
  */
6
6
  import { type StreamCallback, type PermissionHandler, type AskUserQuestionHandler } from './process.js';
7
7
  import type { AgentDefinition } from '@anthropic-ai/claude-agent-sdk';
8
- import type { AgentResponse, Status } from '../models/types.js';
8
+ import type { AgentResponse, Status, PermissionMode } from '../models/types.js';
9
9
  /** Options for calling Claude */
10
10
  export interface ClaudeCallOptions {
11
11
  cwd: string;
@@ -17,6 +17,8 @@ export interface ClaudeCallOptions {
17
17
  statusPatterns?: Record<string, string>;
18
18
  /** SDK agents to register for sub-agent execution */
19
19
  agents?: Record<string, AgentDefinition>;
20
+ /** Permission mode for tool execution (from workflow step) */
21
+ permissionMode?: PermissionMode;
20
22
  /** Enable streaming mode with callback for real-time output */
21
23
  onStream?: StreamCallback;
22
24
  /** Custom permission handler for interactive permission prompts */
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/claude/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAA6C,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACnJ,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAGhE,iCAAiC;AACjC,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,qDAAqD;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACzC,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,mEAAmE;IACnE,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACxC,8CAA8C;IAC9C,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,8CAA8C;AAC9C,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,MAAM,CAYR;AAED,8CAA8C;AAC9C,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAuBpD;AAED,oDAAoD;AACpD,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGnF;AAoBD,uCAAuC;AACvC,wBAAsB,UAAU,CAC9B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,CA0BxB;AAED,oDAAoD;AACpD,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,CA0BxB;AAED,iFAAiF;AACjF,wBAAsB,eAAe,CACnC,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,CAMxB;AAED,sDAAsD;AACtD,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,CAyBxB"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../src/claude/client.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAA6C,KAAK,cAAc,EAAE,KAAK,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,cAAc,CAAC;AACnJ,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,gCAAgC,CAAC;AACtE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAMhF,iCAAiC;AACjC,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,qDAAqD;IACrD,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACzC,8DAA8D;IAC9D,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,+DAA+D;IAC/D,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,mEAAmE;IACnE,mBAAmB,CAAC,EAAE,iBAAiB,CAAC;IACxC,8CAA8C;IAC9C,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;IAC3C,0DAA0D;IAC1D,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,8CAA8C;AAC9C,wBAAgB,YAAY,CAC1B,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,MAAM,CAYR;AAED,8CAA8C;AAC9C,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAuBpD;AAED,oDAAoD;AACpD,wBAAgB,wBAAwB,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAGnF;AAoBD,uCAAuC;AACvC,wBAAsB,UAAU,CAC9B,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,CAgCxB;AAED,oDAAoD;AACpD,wBAAsB,gBAAgB,CACpC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,CAgCxB;AAED,iFAAiF;AACjF,wBAAsB,eAAe,CACnC,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,CAMxB;AAED,sDAAsD;AACtD,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,GACzB,OAAO,CAAC,aAAa,CAAC,CA+BxB"}
@@ -5,6 +5,8 @@
5
5
  */
6
6
  import { executeClaudeCli } from './process.js';
7
7
  import { GENERIC_STATUS_PATTERNS } from '../models/schemas.js';
8
+ import { createLogger } from '../utils/debug.js';
9
+ const log = createLogger('client');
8
10
  /** Detect status from agent output content */
9
11
  export function detectStatus(content, patterns) {
10
12
  for (const [status, pattern] of Object.entries(patterns)) {
@@ -71,6 +73,7 @@ export async function callClaude(agentType, prompt, options) {
71
73
  maxTurns: options.maxTurns,
72
74
  systemPrompt: options.systemPrompt,
73
75
  agents: options.agents,
76
+ permissionMode: options.permissionMode,
74
77
  onStream: options.onStream,
75
78
  onPermissionRequest: options.onPermissionRequest,
76
79
  onAskUserQuestion: options.onAskUserQuestion,
@@ -79,12 +82,16 @@ export async function callClaude(agentType, prompt, options) {
79
82
  const result = await executeClaudeCli(prompt, spawnOptions);
80
83
  const patterns = options.statusPatterns || getBuiltinStatusPatterns(agentType);
81
84
  const status = determineStatus(result, patterns);
85
+ if (!result.success && result.error) {
86
+ log.error('Agent query failed', { agent: agentType, error: result.error });
87
+ }
82
88
  return {
83
89
  agent: agentType,
84
90
  status,
85
91
  content: result.content,
86
92
  timestamp: new Date(),
87
93
  sessionId: result.sessionId,
94
+ error: result.error,
88
95
  };
89
96
  }
90
97
  /** Call Claude with a custom agent configuration */
@@ -96,6 +103,7 @@ export async function callClaudeCustom(agentName, prompt, systemPrompt, options)
96
103
  model: options.model,
97
104
  maxTurns: options.maxTurns,
98
105
  systemPrompt,
106
+ permissionMode: options.permissionMode,
99
107
  onStream: options.onStream,
100
108
  onPermissionRequest: options.onPermissionRequest,
101
109
  onAskUserQuestion: options.onAskUserQuestion,
@@ -105,12 +113,16 @@ export async function callClaudeCustom(agentName, prompt, systemPrompt, options)
105
113
  // Use provided patterns, or fall back to built-in patterns for known agents
106
114
  const patterns = options.statusPatterns || getBuiltinStatusPatterns(agentName);
107
115
  const status = determineStatus(result, patterns);
116
+ if (!result.success && result.error) {
117
+ log.error('Agent query failed', { agent: agentName, error: result.error });
118
+ }
108
119
  return {
109
120
  agent: agentName,
110
121
  status,
111
122
  content: result.content,
112
123
  timestamp: new Date(),
113
124
  sessionId: result.sessionId,
125
+ error: result.error,
114
126
  };
115
127
  }
116
128
  /** Call a Claude Code built-in agent (using claude --agent flag if available) */
@@ -130,18 +142,23 @@ export async function callClaudeSkill(skillName, prompt, options) {
130
142
  allowedTools: options.allowedTools,
131
143
  model: options.model,
132
144
  maxTurns: options.maxTurns,
145
+ permissionMode: options.permissionMode,
133
146
  onStream: options.onStream,
134
147
  onPermissionRequest: options.onPermissionRequest,
135
148
  onAskUserQuestion: options.onAskUserQuestion,
136
149
  bypassPermissions: options.bypassPermissions,
137
150
  };
138
151
  const result = await executeClaudeCli(fullPrompt, spawnOptions);
152
+ if (!result.success && result.error) {
153
+ log.error('Skill query failed', { skill: skillName, error: result.error });
154
+ }
139
155
  return {
140
156
  agent: `skill:${skillName}`,
141
157
  status: result.success ? 'done' : 'blocked',
142
158
  content: result.content,
143
159
  timestamp: new Date(),
144
160
  sessionId: result.sessionId,
161
+ error: result.error,
145
162
  };
146
163
  }
147
164
  //# sourceMappingURL=client.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/claude/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../src/claude/client.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts CHANGED
@@ -10,5 +10,13 @@
10
10
  * takt /help - Show help
11
11
  * takt /config - Select permission mode interactively
12
12
  */
13
- export {};
13
+ export interface WorktreeConfirmationResult {
14
+ execCwd: string;
15
+ isWorktree: boolean;
16
+ }
17
+ /**
18
+ * Ask user whether to create a worktree, and create one if confirmed.
19
+ * Returns the execution directory and whether a worktree was created.
20
+ */
21
+ export declare function confirmAndCreateWorktree(cwd: string, task: string): Promise<WorktreeConfirmationResult>;
14
22
  //# sourceMappingURL=cli.d.ts.map
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;GAUG"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;;;;;;;;GAUG;AAgCH,MAAM,WAAW,0BAA0B;IACzC,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GACX,OAAO,CAAC,0BAA0B,CAAC,CAcrC"}