@iloom/cli 0.4.0 → 0.5.0
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.
- package/README.md +24 -0
- package/dist/{BranchNamingService-TOM2KAUT.js → BranchNamingService-GCCWB3LK.js} +2 -2
- package/dist/ClaudeContextManager-DQFKIMEP.js +16 -0
- package/dist/ClaudeService-CJS32WG2.js +15 -0
- package/dist/{LoomLauncher-SJBZFZXE.js → LoomLauncher-4UG2E4CD.js} +40 -32
- package/dist/LoomLauncher-4UG2E4CD.js.map +1 -0
- package/dist/MetadataManager-WXUVXKUS.js +10 -0
- package/dist/PRManager-7DSIMCAD.js +16 -0
- package/dist/{PromptTemplateManager-2TDZAUC6.js → PromptTemplateManager-72FEOGT6.js} +2 -2
- package/dist/README.md +24 -0
- package/dist/{SettingsManager-FJFU6JJD.js → SettingsManager-XPR4TEQL.js} +2 -2
- package/dist/agents/iloom-issue-analyze-and-plan.md +41 -7
- package/dist/agents/iloom-issue-analyzer.md +38 -8
- package/dist/agents/iloom-issue-complexity-evaluator.md +45 -15
- package/dist/agents/iloom-issue-enhancer.md +60 -18
- package/dist/agents/iloom-issue-implementer.md +29 -7
- package/dist/agents/iloom-issue-planner.md +36 -7
- package/dist/agents/iloom-issue-reviewer.md +30 -7
- package/dist/{chunk-M5XUCTTJ.js → chunk-3CMGCRB5.js} +2 -2
- package/dist/{chunk-KM3W7YQX.js → chunk-4YTILIIH.js} +8 -9
- package/dist/chunk-4YTILIIH.js.map +1 -0
- package/dist/{chunk-HVGQP44L.js → chunk-AS2IRKLU.js} +2 -2
- package/dist/{chunk-ADDNFQJ4.js → chunk-CDQEK2WD.js} +6 -6
- package/dist/{chunk-74VMN2KC.js → chunk-DKQ4SUII.js} +16 -1
- package/dist/chunk-DKQ4SUII.js.map +1 -0
- package/dist/{chunk-LTNDJMTH.js → chunk-GVRO4PWE.js} +13 -9
- package/dist/chunk-GVRO4PWE.js.map +1 -0
- package/dist/{chunk-HHDSIE72.js → chunk-HABINPX2.js} +72 -16
- package/dist/{chunk-HHDSIE72.js.map → chunk-HABINPX2.js.map} +1 -1
- package/dist/{chunk-TR5MC2U6.js → chunk-LN4H3A6A.js} +66 -7
- package/dist/chunk-LN4H3A6A.js.map +1 -0
- package/dist/{chunk-VWNS6DH5.js → chunk-OOU3DKNT.js} +13 -7
- package/dist/chunk-OOU3DKNT.js.map +1 -0
- package/dist/chunk-P2ZQ5LKB.js +347 -0
- package/dist/chunk-P2ZQ5LKB.js.map +1 -0
- package/dist/{chunk-P2WZIDF3.js → chunk-QIUJPPJQ.js} +2 -2
- package/dist/{chunk-HD5SUKI2.js → chunk-RFUOIUQF.js} +49 -6
- package/dist/{chunk-HD5SUKI2.js.map → chunk-RFUOIUQF.js.map} +1 -1
- package/dist/{chunk-OF7BNW4D.js → chunk-RJKMF6BC.js} +30 -4
- package/dist/chunk-RJKMF6BC.js.map +1 -0
- package/dist/{chunk-O7WHXLCB.js → chunk-RNZMHJK7.js} +18 -4
- package/dist/chunk-RNZMHJK7.js.map +1 -0
- package/dist/{chunk-75B2HZZ5.js → chunk-RUC7OULH.js} +2 -2
- package/dist/{chunk-F4J6KEL6.js → chunk-S65T4O6I.js} +2 -2
- package/dist/{chunk-NFVFVYAP.js → chunk-T5IIUG4Z.js} +109 -20
- package/dist/chunk-T5IIUG4Z.js.map +1 -0
- package/dist/{chunk-JJUPY5MM.js → chunk-VAYGNQTE.js} +2 -2
- package/dist/{chunk-S44CHE3G.js → chunk-VTXCGKV5.js} +2 -2
- package/dist/{chunk-MLS5FAV7.js → chunk-YZTDGPFB.js} +21 -1
- package/dist/chunk-YZTDGPFB.js.map +1 -0
- package/dist/{chunk-3NFBZRPR.js → chunk-Z5NXYJIG.js} +19 -1
- package/dist/chunk-Z5NXYJIG.js.map +1 -0
- package/dist/{claude-X7EBJRB2.js → claude-ACVXNB6N.js} +4 -4
- package/dist/{cleanup-7QVPYBJJ.js → cleanup-MIDJVSIU.js} +18 -18
- package/dist/cli.js +293 -372
- package/dist/cli.js.map +1 -1
- package/dist/{contribute-RZYCYUDX.js → contribute-RS3DO3WP.js} +4 -4
- package/dist/{dev-server-LOY7YWCP.js → dev-server-ASH7HJVI.js} +28 -14
- package/dist/dev-server-ASH7HJVI.js.map +1 -0
- package/dist/{feedback-562KPG5U.js → feedback-RVIGHBJG.js} +9 -8
- package/dist/{feedback-562KPG5U.js.map → feedback-RVIGHBJG.js.map} +1 -1
- package/dist/{git-OXJACVAU.js → git-OQAPUPLP.js} +16 -6
- package/dist/git-OQAPUPLP.js.map +1 -0
- package/dist/{ignite-VSIPGKKG.js → ignite-XJALWFAT.js} +60 -25
- package/dist/ignite-XJALWFAT.js.map +1 -0
- package/dist/index.d.ts +60 -7
- package/dist/index.js +107 -7
- package/dist/index.js.map +1 -1
- package/dist/init-F6PFMSU5.js +21 -0
- package/dist/init-F6PFMSU5.js.map +1 -0
- package/dist/mcp/recap-server.js +264 -0
- package/dist/mcp/recap-server.js.map +1 -0
- package/dist/{open-CX7HUE26.js → open-KW4NTLXH.js} +15 -16
- package/dist/{open-CX7HUE26.js.map → open-KW4NTLXH.js.map} +1 -1
- package/dist/{projects-6DTNDVLH.js → projects-QEAEBAT2.js} +2 -2
- package/dist/prompts/init-prompt.txt +31 -72
- package/dist/prompts/issue-prompt.txt +115 -15
- package/dist/prompts/pr-prompt.txt +49 -1
- package/dist/prompts/regular-prompt.txt +80 -20
- package/dist/{rebase-55URTXZC.js → rebase-WZHHE5LU.js} +9 -9
- package/dist/recap-33NPZ3ZO.js +117 -0
- package/dist/recap-33NPZ3ZO.js.map +1 -0
- package/dist/{run-DP2U2CA2.js → run-HRYQ7TR7.js} +15 -16
- package/dist/{run-DP2U2CA2.js.map → run-HRYQ7TR7.js.map} +1 -1
- package/dist/schema/settings.schema.json +13 -2
- package/dist/shell-JMU5XTHW.js +240 -0
- package/dist/shell-JMU5XTHW.js.map +1 -0
- package/dist/{summary-J3CJSM7L.js → summary-4SSGGH7N.js} +20 -12
- package/dist/summary-4SSGGH7N.js.map +1 -0
- package/dist/{test-git-QLAIBJLX.js → test-git-6SAIRBUD.js} +4 -4
- package/dist/{test-prefix-6YM2ZOON.js → test-prefix-RLVRK5ZD.js} +4 -4
- package/dist/{test-tabs-JGO3VOXJ.js → test-tabs-3SCJWRKT.js} +3 -3
- package/package.json +1 -1
- package/dist/ClaudeContextManager-VEGJTS5E.js +0 -16
- package/dist/ClaudeService-ICSHJMQ5.js +0 -15
- package/dist/LoomLauncher-SJBZFZXE.js.map +0 -1
- package/dist/chunk-3NFBZRPR.js.map +0 -1
- package/dist/chunk-74VMN2KC.js.map +0 -1
- package/dist/chunk-KM3W7YQX.js.map +0 -1
- package/dist/chunk-LTNDJMTH.js.map +0 -1
- package/dist/chunk-MLS5FAV7.js.map +0 -1
- package/dist/chunk-NFVFVYAP.js.map +0 -1
- package/dist/chunk-O7WHXLCB.js.map +0 -1
- package/dist/chunk-OF7BNW4D.js.map +0 -1
- package/dist/chunk-QRBOPFAA.js +0 -48
- package/dist/chunk-QRBOPFAA.js.map +0 -1
- package/dist/chunk-TR5MC2U6.js.map +0 -1
- package/dist/chunk-VWNS6DH5.js.map +0 -1
- package/dist/dev-server-LOY7YWCP.js.map +0 -1
- package/dist/ignite-VSIPGKKG.js.map +0 -1
- package/dist/init-SCR2LQ4A.js +0 -21
- package/dist/summary-J3CJSM7L.js.map +0 -1
- /package/dist/{BranchNamingService-TOM2KAUT.js.map → BranchNamingService-GCCWB3LK.js.map} +0 -0
- /package/dist/{ClaudeContextManager-VEGJTS5E.js.map → ClaudeContextManager-DQFKIMEP.js.map} +0 -0
- /package/dist/{ClaudeService-ICSHJMQ5.js.map → ClaudeService-CJS32WG2.js.map} +0 -0
- /package/dist/{PromptTemplateManager-2TDZAUC6.js.map → MetadataManager-WXUVXKUS.js.map} +0 -0
- /package/dist/{SettingsManager-FJFU6JJD.js.map → PRManager-7DSIMCAD.js.map} +0 -0
- /package/dist/{claude-X7EBJRB2.js.map → PromptTemplateManager-72FEOGT6.js.map} +0 -0
- /package/dist/{git-OXJACVAU.js.map → SettingsManager-XPR4TEQL.js.map} +0 -0
- /package/dist/{chunk-M5XUCTTJ.js.map → chunk-3CMGCRB5.js.map} +0 -0
- /package/dist/{chunk-HVGQP44L.js.map → chunk-AS2IRKLU.js.map} +0 -0
- /package/dist/{chunk-ADDNFQJ4.js.map → chunk-CDQEK2WD.js.map} +0 -0
- /package/dist/{chunk-P2WZIDF3.js.map → chunk-QIUJPPJQ.js.map} +0 -0
- /package/dist/{chunk-75B2HZZ5.js.map → chunk-RUC7OULH.js.map} +0 -0
- /package/dist/{chunk-F4J6KEL6.js.map → chunk-S65T4O6I.js.map} +0 -0
- /package/dist/{chunk-JJUPY5MM.js.map → chunk-VAYGNQTE.js.map} +0 -0
- /package/dist/{chunk-S44CHE3G.js.map → chunk-VTXCGKV5.js.map} +0 -0
- /package/dist/{init-SCR2LQ4A.js.map → claude-ACVXNB6N.js.map} +0 -0
- /package/dist/{cleanup-7QVPYBJJ.js.map → cleanup-MIDJVSIU.js.map} +0 -0
- /package/dist/{contribute-RZYCYUDX.js.map → contribute-RS3DO3WP.js.map} +0 -0
- /package/dist/{projects-6DTNDVLH.js.map → projects-QEAEBAT2.js.map} +0 -0
- /package/dist/{rebase-55URTXZC.js.map → rebase-WZHHE5LU.js.map} +0 -0
- /package/dist/{test-git-QLAIBJLX.js.map → test-git-6SAIRBUD.js.map} +0 -0
- /package/dist/{test-prefix-6YM2ZOON.js.map → test-prefix-RLVRK5ZD.js.map} +0 -0
- /package/dist/{test-tabs-JGO3VOXJ.js.map → test-tabs-3SCJWRKT.js.map} +0 -0
|
@@ -3,7 +3,6 @@
|
|
|
3
3
|
**BEFORE RESPONDING TO ANY REQUEST, VERIFY IT'S CONFIGURATION-RELATED:**
|
|
4
4
|
|
|
5
5
|
□ Is this about editing .iloom/settings.json or .iloom/settings.local.json?
|
|
6
|
-
□ Is this about shell autocomplete setup?
|
|
7
6
|
□ Is this a general question about iloom features/capabilities?
|
|
8
7
|
|
|
9
8
|
**If NO to all → IMMEDIATELY decline and redirect to exit session**
|
|
@@ -18,13 +17,6 @@
|
|
|
18
17
|
- ✅ **ONLY** read them as part of a Write operation to preserve existing settings
|
|
19
18
|
- **WHY**: All current settings content is provided in template variables (SETTINGS_JSON, SETTINGS_LOCAL_JSON)
|
|
20
19
|
|
|
21
|
-
**SHELL CONFIGURATION FILES (.zshrc, .bashrc, .bash_profile, config.fish, etc.):**
|
|
22
|
-
- ❌ **NEVER** read these files just to get information about current shell configuration
|
|
23
|
-
- ❌ **NEVER** read them just to check if autocomplete is already set up
|
|
24
|
-
- ✅ **ONLY** read them when you need to MODIFY/WRITE to them (e.g., adding autocomplete setup)
|
|
25
|
-
- ✅ **ONLY** read them as part of a Write operation to avoid duplicating existing content
|
|
26
|
-
- **WHY**: A filtered excerpt is provided in template variable (SHELL_CONFIG_CONTENT) showing only completion-related content for informational purposes
|
|
27
|
-
|
|
28
20
|
**OTHER FILES:**
|
|
29
21
|
- ❌ **NEVER** read any other project files unless explicitly required for configuration changes
|
|
30
22
|
- ❌ **NEVER** read README.md, package.json, or any other files "for context"
|
|
@@ -32,10 +24,8 @@
|
|
|
32
24
|
|
|
33
25
|
**VIOLATION EXAMPLES TO AVOID:**
|
|
34
26
|
- ❌ "Let me read .iloom/settings.json to see your current configuration"
|
|
35
|
-
- ❌ "I'll check your .zshrc to see if autocomplete is set up"
|
|
36
27
|
- ❌ "Let me look at your settings file to understand what's configured"
|
|
37
28
|
- ✅ "I'll update .iloom/settings.json with your new configuration" (then read+write)
|
|
38
|
-
- ✅ "I'll add autocomplete to your .zshrc" (then read+write to avoid duplicates)
|
|
39
29
|
|
|
40
30
|
**You MUST immediately decline requests like:**
|
|
41
31
|
- "Work on issue #142"
|
|
@@ -49,18 +39,17 @@
|
|
|
49
39
|
- Any development or coding tasks
|
|
50
40
|
|
|
51
41
|
**Response template for declined requests:**
|
|
52
|
-
"I'm in iloom configuration mode and can only help with settings
|
|
42
|
+
"I'm in iloom configuration mode and can only help with settings and questions about iloom. To work on [task], please exit this session and use appropriate iloom commands or start a regular Claude session."
|
|
53
43
|
|
|
54
44
|
**IMMEDIATELY decline any non-configuration request. Before responding to ANY user request, verify it's configuration-related. If not, decline and redirect.**
|
|
55
45
|
|
|
56
46
|
**What I CAN do:**
|
|
57
47
|
1. Configure iloom CLI settings (.iloom/settings.json and .iloom/settings.local.json)
|
|
58
|
-
2.
|
|
59
|
-
3. Answer questions ABOUT iloom (how it works, what it does) but DO NOT perform iloom OPERATIONS (start, finish, cleanup, etc.)
|
|
48
|
+
2. Answer questions ABOUT iloom (how it works, what it does) but DO NOT perform iloom OPERATIONS (start, finish, cleanup, etc.)
|
|
60
49
|
|
|
61
50
|
**What I CANNOT do:**
|
|
62
51
|
- Execute code or scripts unrelated to configuration
|
|
63
|
-
- Create files outside of .iloom/ directory
|
|
52
|
+
- Create files outside of .iloom/ directory
|
|
64
53
|
- Perform general coding tasks, bug fixes, or feature development
|
|
65
54
|
- Start any iloom workflows (start, finish, cleanup commands)
|
|
66
55
|
- Analyze code, debug issues, or implement features
|
|
@@ -444,7 +433,8 @@ The following JSON Schema defines valid iloom settings:
|
|
|
444
433
|
"type": "string",
|
|
445
434
|
"enum": [
|
|
446
435
|
"local",
|
|
447
|
-
"github-pr"
|
|
436
|
+
"github-pr",
|
|
437
|
+
"github-draft-pr"
|
|
448
438
|
],
|
|
449
439
|
"default": "local"
|
|
450
440
|
},
|
|
@@ -453,7 +443,7 @@ The following JSON Schema defines valid iloom settings:
|
|
|
453
443
|
}
|
|
454
444
|
},
|
|
455
445
|
"additionalProperties": false,
|
|
456
|
-
"description": "Merge behavior configuration: local (merge locally) or github-pr (create PR)"
|
|
446
|
+
"description": "Merge behavior configuration: local (merge locally), github-pr (create PR), or github-draft-pr (create draft PR at start, mark ready on finish)"
|
|
457
447
|
},
|
|
458
448
|
"ide": {
|
|
459
449
|
"type": "object",
|
|
@@ -492,6 +482,16 @@ The following JSON Schema defines valid iloom settings:
|
|
|
492
482
|
},
|
|
493
483
|
"additionalProperties": false,
|
|
494
484
|
"description": "Color synchronization settings for workspace identification"
|
|
485
|
+
},
|
|
486
|
+
"attribution": {
|
|
487
|
+
"type": "string",
|
|
488
|
+
"enum": [
|
|
489
|
+
"off",
|
|
490
|
+
"upstreamOnly",
|
|
491
|
+
"on"
|
|
492
|
+
],
|
|
493
|
+
"default": "upstreamOnly",
|
|
494
|
+
"description": "Controls when iloom attribution appears in session summaries. \"off\" - never show attribution. \"upstreamOnly\" - only show for contributions to external repositories (e.g., open source). \"on\" - always show attribution."
|
|
495
495
|
}
|
|
496
496
|
},
|
|
497
497
|
"additionalProperties": false
|
|
@@ -567,54 +567,6 @@ You should present the combined configuration as defaults when asking questions,
|
|
|
567
567
|
|
|
568
568
|
{{#IF SETTINGS_JSON}}{{#IF SETTINGS_LOCAL_JSON}}{{/IF SETTINGS_LOCAL_JSON}}{{/IF SETTINGS_JSON}}
|
|
569
569
|
|
|
570
|
-
## Shell Autocomplete Configuration
|
|
571
|
-
|
|
572
|
-
**Shell detected: SHELL_TYPE**
|
|
573
|
-
|
|
574
|
-
Shell configuration file: `SHELL_CONFIG_PATH`
|
|
575
|
-
|
|
576
|
-
**CRITICAL: DO NOT attempt to read or access the user's shell configuration file directly.**
|
|
577
|
-
|
|
578
|
-
Work ONLY with the provided excerpt below. Do not use Read tool or any other method to access the shell config file.
|
|
579
|
-
|
|
580
|
-
You have been provided with a filtered excerpt below that shows ONLY the completion-related portions of the shell config file. This excerpt was created by searching for lines containing '--completion' along with 2 lines of surrounding context for readability.
|
|
581
|
-
|
|
582
|
-
**What this excerpt contains:**
|
|
583
|
-
- Lines matching '--completion' (if any exist)
|
|
584
|
-
- 2 lines before and 2 lines after each match for context
|
|
585
|
-
- If empty, it means NO completion setup was found in the file
|
|
586
|
-
|
|
587
|
-
**What this excerpt does NOT contain:**
|
|
588
|
-
- The full shell configuration file
|
|
589
|
-
- Environment variables, aliases, or other shell customizations
|
|
590
|
-
- Any content unrelated to completion setup
|
|
591
|
-
|
|
592
|
-
### SHELL CONFIG EXCERPT (Completion-related lines only)
|
|
593
|
-
|
|
594
|
-
```
|
|
595
|
-
SHELL_CONFIG_CONTENT
|
|
596
|
-
```
|
|
597
|
-
**BEFORE proceeding with iloom settings configuration, analyze the excerpt above and determine if autocomplete is already configured.**
|
|
598
|
-
|
|
599
|
-
Look for patterns like:
|
|
600
|
-
- `eval "$(iloom --completion)"`
|
|
601
|
-
- `eval "$(il --completion)"`
|
|
602
|
-
- `iloom --completion`
|
|
603
|
-
- `il --completion`
|
|
604
|
-
|
|
605
|
-
If autocomplete is already configured:
|
|
606
|
-
- Display: "✓ Shell autocomplete is already configured in SHELL_CONFIG_PATH"
|
|
607
|
-
- Proceed directly to iloom settings configuration below
|
|
608
|
-
|
|
609
|
-
If autocomplete is NOT configured:
|
|
610
|
-
- Ask the user: "Would you like to enable shell autocomplete for iloom commands?"
|
|
611
|
-
- If they say yes:
|
|
612
|
-
- Use the Write tool to append the appropriate completion setup line to SHELL_CONFIG_PATH
|
|
613
|
-
- For bash/zsh: `eval "$(iloom --completion)"`
|
|
614
|
-
- For fish: `iloom --completion | source`
|
|
615
|
-
- Display: "✓ Added autocomplete setup to SHELL_CONFIG_PATH. Restart your shell or run 'source SHELL_CONFIG_PATH' to enable."
|
|
616
|
-
- If they say no, just proceed to settings configuration
|
|
617
|
-
|
|
618
570
|
## Configuration Workflow
|
|
619
571
|
|
|
620
572
|
Follow these steps to guide the user through configuration:
|
|
@@ -752,9 +704,10 @@ Since this repository has multiple git remotes, GitHub Issues is suggested as th
|
|
|
752
704
|
- Store answer as: `issueManagement.provider`
|
|
753
705
|
|
|
754
706
|
**Note on Provider + Merge Mode Combinations:**
|
|
755
|
-
- GitHub Issues + local merge
|
|
707
|
+
- GitHub Issues + local merge: Requires authorized GitHub CLI (`gh`)
|
|
708
|
+
- GitHub Issues + github-pr or github-draft-pr: Requires authorized GitHub CLI (`gh`)
|
|
756
709
|
- Linear Issues + local merge: Requires Linear API token only
|
|
757
|
-
- Linear Issues + github-pr
|
|
710
|
+
- Linear Issues + github-pr or github-draft-pr: Requires BOTH Linear API token AND authorized GitHub CLI (`gh`)
|
|
758
711
|
|
|
759
712
|
**Step 2: Provider-Specific Configuration**
|
|
760
713
|
|
|
@@ -833,12 +786,17 @@ REMOTES_INFO
|
|
|
833
786
|
- Question format: "How should iloom handle finishing work?{{#IF currentMergeMode}} (Currently: [currentMergeMode]){{/IF currentMergeMode}}"
|
|
834
787
|
- Options:
|
|
835
788
|
- "local" - Merge changes locally (traditional workflow)
|
|
836
|
-
- "github-pr" - Create GitHub PR
|
|
837
|
-
|
|
838
|
-
-
|
|
789
|
+
- "github-pr" - Create GitHub PR when finishing (for PR-based workflows)
|
|
790
|
+
- "github-draft-pr" - Create draft PR at start, mark ready when finishing (recommended for forks)
|
|
791
|
+
- Default:
|
|
792
|
+
- If origin + upstream remotes detected (fork pattern): "github-draft-pr"
|
|
793
|
+
- Otherwise: currentMergeMode or "local"
|
|
794
|
+
- Validation: Must be one of: local, github-pr, github-draft-pr
|
|
839
795
|
- Store answer as: `mergeBehavior.mode`
|
|
840
|
-
- Context:
|
|
841
|
-
|
|
796
|
+
- Context:
|
|
797
|
+
- **Fork workflows (with upstream remote)**: Use "github-draft-pr" mode. This creates a draft PR at the start of work, routes all AI agent comments to the PR (not the issue), and marks the PR ready for review when you finish. This keeps upstream issue trackers clean.
|
|
798
|
+
- **Direct contribution workflows**: Use "github-pr" to create PRs when finishing, or "local" to merge locally.
|
|
799
|
+
- **IMPORTANT**: Both "github-pr" and "github-draft-pr" modes require GitHub CLI (`gh`) to be installed and authenticated, regardless of your issue tracker provider.
|
|
842
800
|
|
|
843
801
|
**Implementation Details:**
|
|
844
802
|
- Ask Step 1 first to determine provider
|
|
@@ -1050,10 +1008,11 @@ When both settings.json and settings.local.json exist, you MUST prevent duplicat
|
|
|
1050
1008
|
```json
|
|
1051
1009
|
{
|
|
1052
1010
|
"mergeBehavior": {
|
|
1053
|
-
"mode": "<user's answer>"
|
|
1011
|
+
"mode": "<user's answer>" // "github-pr" or "github-draft-pr"
|
|
1054
1012
|
}
|
|
1055
1013
|
}
|
|
1056
1014
|
```
|
|
1015
|
+
Note: Valid modes are "local", "github-pr", and "github-draft-pr". Only include if not "local".
|
|
1057
1016
|
|
|
1058
1017
|
7. **Add colors settings based on Phase 2.5 recommendations (if vscode or cursor IDE):**
|
|
1059
1018
|
```json
|
|
@@ -20,6 +20,70 @@ Before sending any response, verify it doesn't contain:
|
|
|
20
20
|
|
|
21
21
|
---
|
|
22
22
|
|
|
23
|
+
## Loom Recap
|
|
24
|
+
|
|
25
|
+
**IMPORTANT: The recap is NOT a work log. It's a knowledge capture system for the USER.**
|
|
26
|
+
|
|
27
|
+
The recap panel is visible to the user in VS Code. They don't care about your internal process. They care about:
|
|
28
|
+
|
|
29
|
+
1. **Decisions** - Choices that affect the codebase: "Using X pattern because Y"
|
|
30
|
+
2. **Insights** - Things discovered that someone picking this up later would need to know: "The auth module depends on Z"
|
|
31
|
+
3. **Risks** - Things that could go wrong: "This assumes X, will break if Y"
|
|
32
|
+
4. **Assumptions** - Bets you're making: "Assuming backwards compat not needed"
|
|
33
|
+
|
|
34
|
+
Use these Recap MCP tools:
|
|
35
|
+
- `recap.set_complexity` - Call when complexity is confirmed at ROUTING DECISION POINT (trivial/simple/complex)
|
|
36
|
+
- `recap.get_recap` - Call before adding entries to check what's already captured
|
|
37
|
+
- `recap.add_entry` - Call with type (decision/insight/risk/assumption) and concise content
|
|
38
|
+
- `recap.add_artifact` - After creating/updating comments, issues, or PRs, log them with type, primaryUrl, and description. Duplicates with the same primaryUrl will be replaced.
|
|
39
|
+
|
|
40
|
+
**NEVER log:**
|
|
41
|
+
- What phases you skipped
|
|
42
|
+
- Complexity classifications
|
|
43
|
+
- Status updates ("implementation complete", "tests pass")
|
|
44
|
+
- Anything about your own workflow process
|
|
45
|
+
|
|
46
|
+
**Self-check before adding:** If your entry mentions "enhancement", "complexity evaluation", "SIMPLE/COMPLEX", "word count", "skipping", or "phase" - it's process noise. Don't add it.
|
|
47
|
+
|
|
48
|
+
---
|
|
49
|
+
|
|
50
|
+
{{#IF DRAFT_PR_MODE}}
|
|
51
|
+
## Comment Routing: Draft PR Mode
|
|
52
|
+
|
|
53
|
+
**IMPORTANT: This loom is using draft PR mode.**
|
|
54
|
+
|
|
55
|
+
- **Read issue details** from Issue #ISSUE_NUMBER using `mcp__issue_management__get_issue`
|
|
56
|
+
- **Write ALL workflow comments** to PR #DRAFT_PR_NUMBER using `type: "pr"`
|
|
57
|
+
|
|
58
|
+
When calling `mcp__issue_management__create_comment`:
|
|
59
|
+
```
|
|
60
|
+
{
|
|
61
|
+
number: "DRAFT_PR_NUMBER",
|
|
62
|
+
body: "your comment content",
|
|
63
|
+
type: "pr"
|
|
64
|
+
}
|
|
65
|
+
```
|
|
66
|
+
|
|
67
|
+
This keeps all AI workflow comments on the draft PR, not the original issue.
|
|
68
|
+
{{/IF DRAFT_PR_MODE}}
|
|
69
|
+
{{#IF STANDARD_ISSUE_MODE}}
|
|
70
|
+
## Comment Routing: Standard Issue Mode
|
|
71
|
+
|
|
72
|
+
- **Read issue details** from Issue #ISSUE_NUMBER using `mcp__issue_management__get_issue`
|
|
73
|
+
- **Write ALL workflow comments** to Issue #ISSUE_NUMBER using `type: "issue"`
|
|
74
|
+
|
|
75
|
+
When calling `mcp__issue_management__create_comment`:
|
|
76
|
+
```
|
|
77
|
+
{
|
|
78
|
+
number: "ISSUE_NUMBER",
|
|
79
|
+
body: "your comment content",
|
|
80
|
+
type: "issue"
|
|
81
|
+
}
|
|
82
|
+
```
|
|
83
|
+
{{/IF STANDARD_ISSUE_MODE}}
|
|
84
|
+
|
|
85
|
+
---
|
|
86
|
+
|
|
23
87
|
{{#IF FIRST_TIME_USER}}
|
|
24
88
|
## First-Time User Context
|
|
25
89
|
|
|
@@ -322,6 +386,7 @@ Only execute if workflow plan determined NEEDS_ANALYSIS AND complexity is COMPLE
|
|
|
322
386
|
1. Execute: @agent-iloom-issue-analyzer ISSUE_NUMBER with the following instructions about assumptions:
|
|
323
387
|
- Before making assumptions, scan ALL issue comments for previously asked questions and their answers. Document any assumptions clearly in question tables with your own answers.
|
|
324
388
|
2. Upon completion: Extract issue+comment link from agent output and provide link to issue comment (including comment ID)
|
|
389
|
+
- Use `recap.add_entry` to log significant technical findings (type: "insight" for dependencies/constraints, type: "risk" for problems identified)
|
|
325
390
|
{{#IF INTERACTIVE_MODE}}
|
|
326
391
|
2.5. Extract and validate assumptions (batched validation):
|
|
327
392
|
- Read the agent's issue comment output
|
|
@@ -364,24 +429,29 @@ After STEP 1.5 completes and complexity is confirmed, determine which workflow p
|
|
|
364
429
|
**Check the confirmed complexity:**
|
|
365
430
|
|
|
366
431
|
**IF TRIVIAL complexity confirmed:**
|
|
367
|
-
1.
|
|
368
|
-
2.
|
|
369
|
-
3. Mark
|
|
370
|
-
4.
|
|
432
|
+
1. Call `recap.set_complexity({ complexity: 'trivial', reason: '[brief reason from evaluator]' })`
|
|
433
|
+
2. Display to user: "Using TRIVIAL workflow: Skipping analysis and planning, proceeding directly to implementation"
|
|
434
|
+
3. Mark todo #8 as completed
|
|
435
|
+
4. Mark todos #9, #10, #11, #12, #13, #14, and #15 as completed (analysis/planning steps that will not execute)
|
|
436
|
+
5. Skip directly to **STEP 4** (Implementation Phase)
|
|
371
437
|
|
|
372
438
|
**IF SIMPLE complexity confirmed:**
|
|
373
|
-
1.
|
|
374
|
-
2.
|
|
375
|
-
3. Mark
|
|
376
|
-
4.
|
|
377
|
-
5.
|
|
439
|
+
1. Call `recap.set_complexity({ complexity: 'simple', reason: '[brief reason from evaluator]' })`
|
|
440
|
+
2. Display to user: "✓ Using SIMPLE workflow: Combined analysis and planning via @agent-iloom-issue-analyze-and-plan, then implementation"
|
|
441
|
+
3. Mark todo #8 as completed
|
|
442
|
+
4. Mark todos #10, #11, #12, #13, #14, and #15 as completed (COMPLEX workflow steps that will not execute)
|
|
443
|
+
5. Skip to **STEP 2-SIMPLE** (Combined Analysis and Planning Phase)
|
|
444
|
+
6. Note: After STEP 2-SIMPLE completes, skip separate analysis (STEP 2) and planning (STEP 3) phases, go directly to implementation (STEP 4)
|
|
378
445
|
|
|
379
446
|
**IF COMPLEX complexity confirmed:**
|
|
380
|
-
1.
|
|
381
|
-
2.
|
|
382
|
-
3. Mark todo #
|
|
383
|
-
4.
|
|
384
|
-
5.
|
|
447
|
+
1. Call `recap.set_complexity({ complexity: 'complex', reason: '[brief reason from evaluator]' })`
|
|
448
|
+
2. Display to user: "✓ Using COMPLEX workflow: Separate analysis, planning, and implementation phases"
|
|
449
|
+
3. Mark todo #8 as completed
|
|
450
|
+
4. Mark todo #9 as completed (SIMPLE workflow step that will not execute)
|
|
451
|
+
5. Continue to **STEP 2** (Analysis Phase) above
|
|
452
|
+
6. Follow normal workflow through STEP 2, STEP 3, and STEP 4
|
|
453
|
+
|
|
454
|
+
**Note:** If the user reclassifies complexity (changes from evaluator's assessment), call `set_complexity` with the user's confirmed classification.
|
|
385
455
|
|
|
386
456
|
---
|
|
387
457
|
|
|
@@ -394,6 +464,7 @@ Execute combined analyze-and-plan agent:
|
|
|
394
464
|
2. Execute: @agent-iloom-issue-analyze-and-plan ISSUE_NUMBER with the following instructions about assumptions:
|
|
395
465
|
- Before making assumptions, scan ALL issue comments for previously asked questions and their answers. Document any assumptions clearly in question tables with your own answers.
|
|
396
466
|
3. Upon completion: Extract issue+comment link from agent output and provide link to issue comment (including comment ID)
|
|
467
|
+
- Use `recap.add_entry` to log key technical discoveries (type: "insight") and design decisions (type: "decision")
|
|
397
468
|
{{#IF INTERACTIVE_MODE}}
|
|
398
469
|
3.5. Extract and validate assumptions (batched validation):
|
|
399
470
|
- Read the agent's issue comment output
|
|
@@ -433,6 +504,7 @@ Only execute if workflow plan determined NEEDS_PLANNING AND complexity is COMPLE
|
|
|
433
504
|
1. Execute: @agent-iloom-issue-planner ISSUE_NUMBER with the following instructions about assumptions:
|
|
434
505
|
- Before making assumptions, scan ALL issue comments for previously asked questions and their answers. Document any assumptions clearly in question tables with your own answers.
|
|
435
506
|
2. Upon completion: Extract issue+comment link from agent output and provide link to issue comment (including comment ID)
|
|
507
|
+
- Use `recap.add_entry` to log key architectural decisions (e.g., type: "decision", content: "Chose approach A over B due to X constraint")
|
|
436
508
|
{{#IF INTERACTIVE_MODE}}
|
|
437
509
|
2.5. Extract and validate assumptions (batched validation):
|
|
438
510
|
- Read the agent's issue comment output
|
|
@@ -481,6 +553,7 @@ Only execute if workflow plan determined NEEDS_IMPLEMENTATION:
|
|
|
481
553
|
- **CRITICAL**: The implementation plan in the issue comments contains exact file paths and line numbers. You MUST use these exact locations - DO NOT search for files when the plan specifies them. Extract file locations from the plan in Step 1.5 before implementing.
|
|
482
554
|
- The implementation plan is located in comment ID [COMMENT_ID] (if planning phase was executed). Read this comment first in Step 1.5 to extract file specifications.
|
|
483
555
|
3. Upon completion: Mark todo #16 as completed
|
|
556
|
+
- If implementation revealed unexpected issues or required pivots, use `recap.add_entry` to log them (type: "insight" or "risk")
|
|
484
557
|
4. Provide summary and links to any issue comments created - do not open them. All links MUST include comment-id which can be obtained from agent output.
|
|
485
558
|
5. Mark todo #17 as completed
|
|
486
559
|
|
|
@@ -490,9 +563,36 @@ If workflow plan determined SKIP_IMPLEMENTATION:
|
|
|
490
563
|
|
|
491
564
|
---
|
|
492
565
|
|
|
566
|
+
## Post-Workflow Help
|
|
567
|
+
|
|
568
|
+
After completing the implementation phase, tell the user:
|
|
569
|
+
*"Take your time to review the code and test the changes. I'm here if you need help with anything - just let me know if you find bugs, want additional changes, have questions, or need explanations. When you're ready to wrap up, just say so and I'll give you the next steps."*
|
|
570
|
+
|
|
571
|
+
**Wait for their response.** Do not prompt them with a question immediately.
|
|
572
|
+
|
|
573
|
+
**Handling Requests:**
|
|
574
|
+
|
|
575
|
+
When the user requests help, **prefer subagents** to preserve your context window for ongoing conversation.
|
|
576
|
+
|
|
577
|
+
| Request Type | Action |
|
|
578
|
+
|--------------|--------|
|
|
579
|
+
| Trivial (quick answer, single-line fix) | Handle directly |
|
|
580
|
+
| Bug investigation / analysis | `@agent-iloom-issue-analyzer` → present findings → offer to fix |
|
|
581
|
+
| Code changes | `@agent-iloom-issue-implementer` |
|
|
582
|
+
| New features / complex changes | `@agent-iloom-issue-analyze-and-plan` → if approved, `@agent-iloom-issue-implementer` |
|
|
583
|
+
| Deep questions (how/why something works) | `@agent-iloom-issue-analyzer` |
|
|
584
|
+
| Out-of-scope requests | Ask user: help anyway, create new issue, or skip |
|
|
585
|
+
| Ready to wrap up | Show Wrapping Up Instructions (see below) |
|
|
586
|
+
|
|
587
|
+
After handling each request, summarize what was done and confirm you're still available.
|
|
588
|
+
|
|
589
|
+
Use `recap.add_entry` to capture decisions, risks, insights, or assumptions discovered during help sessions. Do not log status updates or task completions.
|
|
590
|
+
|
|
591
|
+
---
|
|
592
|
+
|
|
493
593
|
## Wrapping Up Instructions
|
|
494
594
|
|
|
495
|
-
|
|
595
|
+
When the user says they're done or ready to wrap up, provide these instructions:
|
|
496
596
|
|
|
497
597
|
"## Wrapping Up
|
|
498
598
|
|
|
@@ -20,6 +20,32 @@ Before sending any response, verify it doesn't contain:
|
|
|
20
20
|
|
|
21
21
|
---
|
|
22
22
|
|
|
23
|
+
## Loom Recap
|
|
24
|
+
|
|
25
|
+
**IMPORTANT: The recap is NOT a work log. It's a knowledge capture system for the USER.**
|
|
26
|
+
|
|
27
|
+
The recap panel is visible to the user in VS Code. They don't care about your internal process. They care about:
|
|
28
|
+
|
|
29
|
+
1. **Decisions** - Choices that affect the codebase: "Using X pattern because Y"
|
|
30
|
+
2. **Insights** - Things discovered that someone picking this up later would need to know: "The auth module depends on Z"
|
|
31
|
+
3. **Risks** - Things that could go wrong: "This assumes X, will break if Y"
|
|
32
|
+
4. **Assumptions** - Bets you're making: "Assuming backwards compat not needed"
|
|
33
|
+
|
|
34
|
+
Use these Recap MCP tools:
|
|
35
|
+
- `recap.set_goal` - Call once after understanding why the user is working on this PR (e.g., "Review PR for security concerns", "Fix failing tests")
|
|
36
|
+
- `recap.set_complexity` - Call when task complexity is assessed (trivial/simple/complex)
|
|
37
|
+
- `recap.get_recap` - Call before adding entries to check what's already captured
|
|
38
|
+
- `recap.add_entry` - Call with type (decision/insight/risk/assumption) and concise content
|
|
39
|
+
- `recap.add_artifact` - After creating/updating comments, issues, or PRs, log them with type, primaryUrl, and description. Duplicates with the same primaryUrl will be replaced.
|
|
40
|
+
|
|
41
|
+
**NEVER log:**
|
|
42
|
+
- Status updates ("PR reviewed", "tests pass")
|
|
43
|
+
- Anything about your own workflow process
|
|
44
|
+
|
|
45
|
+
**Self-check before adding:** If your entry is about what YOU did rather than what the USER needs to know - don't add it.
|
|
46
|
+
|
|
47
|
+
---
|
|
48
|
+
|
|
23
49
|
You are a senior software engineer responsible for well-architected, easy to maintain and understandable code.
|
|
24
50
|
|
|
25
51
|
Please read the Pull Request and all its details using JSON output:
|
|
@@ -56,9 +82,31 @@ Remember to:
|
|
|
56
82
|
- Update documentation if needed
|
|
57
83
|
- Ensure the solution is maintainable and follows best practices
|
|
58
84
|
|
|
85
|
+
---
|
|
86
|
+
|
|
87
|
+
## Handling Requests
|
|
88
|
+
|
|
89
|
+
When the user requests help, **prefer subagents** to preserve your context window for ongoing conversation.
|
|
90
|
+
|
|
91
|
+
| Request Type | Action |
|
|
92
|
+
|--------------|--------|
|
|
93
|
+
| Trivial (quick answer, single-line fix) | Handle directly |
|
|
94
|
+
| Bug investigation / analysis | `@agent-iloom-issue-analyzer` → present findings → offer to fix |
|
|
95
|
+
| Code changes | `@agent-iloom-issue-implementer` |
|
|
96
|
+
| New features / complex changes | `@agent-iloom-issue-analyze-and-plan` → if approved, `@agent-iloom-issue-implementer` |
|
|
97
|
+
| Deep questions (how/why something works) | `@agent-iloom-issue-analyzer` |
|
|
98
|
+
| Out-of-scope requests | Ask user: help anyway, create new issue, or skip |
|
|
99
|
+
| Ready to wrap up | Show Wrapping Up Instructions (see below) |
|
|
100
|
+
|
|
101
|
+
After handling each request, summarize what was done and confirm you're still available.
|
|
102
|
+
|
|
103
|
+
Use `recap.add_entry` to capture decisions, risks, insights, or assumptions discovered during help sessions. Do not log status updates or task completions.
|
|
104
|
+
|
|
105
|
+
---
|
|
106
|
+
|
|
59
107
|
## Wrapping Up Instructions
|
|
60
108
|
|
|
61
|
-
When the user
|
|
109
|
+
When the user says they're done or ready to wrap up, provide these instructions:
|
|
62
110
|
|
|
63
111
|
"## Wrapping Up
|
|
64
112
|
|
|
@@ -20,6 +20,34 @@ Before sending any response, verify it doesn't contain:
|
|
|
20
20
|
|
|
21
21
|
---
|
|
22
22
|
|
|
23
|
+
## Loom Recap
|
|
24
|
+
|
|
25
|
+
**IMPORTANT: The recap is NOT a work log. It's a knowledge capture system for the USER.**
|
|
26
|
+
|
|
27
|
+
The recap panel is visible to the user in VS Code. They don't care about your internal process. They care about:
|
|
28
|
+
|
|
29
|
+
1. **Decisions** - Choices that affect the codebase: "Using X pattern because Y"
|
|
30
|
+
2. **Insights** - Things discovered that someone picking this up later would need to know: "The auth module depends on Z"
|
|
31
|
+
3. **Risks** - Things that could go wrong: "This assumes X, will break if Y"
|
|
32
|
+
4. **Assumptions** - Bets you're making: "Assuming backwards compat not needed"
|
|
33
|
+
|
|
34
|
+
Use these Recap MCP tools:
|
|
35
|
+
- `recap.set_goal` - Call once at session start with the user's problem statement
|
|
36
|
+
- `recap.set_complexity` - Call when complexity is confirmed at ROUTING DECISION POINT (trivial/simple/complex)
|
|
37
|
+
- `recap.get_recap` - Call before adding entries to check what's already captured
|
|
38
|
+
- `recap.add_entry` - Call with type (decision/insight/risk/assumption) and concise content
|
|
39
|
+
- `recap.add_artifact` - After creating/updating comments, issues, or PRs, log them with type, primaryUrl, and description. Duplicates with the same primaryUrl will be replaced.
|
|
40
|
+
|
|
41
|
+
**NEVER log:**
|
|
42
|
+
- What phases you skipped
|
|
43
|
+
- Complexity classifications
|
|
44
|
+
- Status updates ("implementation complete", "tests pass")
|
|
45
|
+
- Anything about your own workflow process
|
|
46
|
+
|
|
47
|
+
**Self-check before adding:** If your entry mentions "enhancement", "complexity evaluation", "SIMPLE/COMPLEX", "word count", "skipping", or "phase" - it's process noise. Don't add it.
|
|
48
|
+
|
|
49
|
+
---
|
|
50
|
+
|
|
23
51
|
{{#IF FIRST_TIME_USER}}
|
|
24
52
|
## First-Time User Context
|
|
25
53
|
|
|
@@ -156,8 +184,9 @@ You are orchestrating a set of agents through a development process, with human
|
|
|
156
184
|
- "Yes, proceed with enhancement" (default)
|
|
157
185
|
- "No, let me clarify"
|
|
158
186
|
- If user chooses "No, let me clarify": Repeat the problem gathering process
|
|
159
|
-
5.
|
|
160
|
-
6.
|
|
187
|
+
5. Call `recap.set_goal` with the user's problem statement
|
|
188
|
+
6. Mark todo #1 as completed
|
|
189
|
+
7. Proceed to STEP 1 (Enhancement Phase)
|
|
161
190
|
|
|
162
191
|
**STEP 1 - Enhancement Phase:**
|
|
163
192
|
|
|
@@ -281,22 +310,27 @@ After STEP 2 (Complexity Evaluation) completes and complexity is confirmed, dete
|
|
|
281
310
|
**Check the confirmed complexity:**
|
|
282
311
|
|
|
283
312
|
**IF TRIVIAL complexity confirmed:**
|
|
284
|
-
1.
|
|
285
|
-
2.
|
|
286
|
-
3.
|
|
287
|
-
4.
|
|
313
|
+
1. Call `recap.set_complexity({ complexity: 'trivial', reason: '[brief reason from evaluator]' })`
|
|
314
|
+
2. Display to user: "Using TRIVIAL workflow: Skipping analysis and planning, proceeding directly to implementation"
|
|
315
|
+
3. Mark todos #9, #10, #11, #12, #13, #14, #15, and #16 as completed (analysis and planning steps that will not execute)
|
|
316
|
+
4. Skip directly to **STEP 5** (Implementation Phase)
|
|
317
|
+
5. Note: TRIVIAL tasks are straightforward enough that they don't need analysis or planning
|
|
288
318
|
|
|
289
319
|
**IF SIMPLE complexity confirmed:**
|
|
290
|
-
1.
|
|
291
|
-
2.
|
|
292
|
-
3.
|
|
293
|
-
4.
|
|
320
|
+
1. Call `recap.set_complexity({ complexity: 'simple', reason: '[brief reason from evaluator]' })`
|
|
321
|
+
2. Display to user: "Using SIMPLE workflow: Combined analysis and planning via @agent-iloom-issue-analyze-and-plan, then implementation"
|
|
322
|
+
3. Mark todos #9, #11, #12, #13, #14, #15, and #16 as completed (TRIVIAL and COMPLEX workflow steps that will not execute)
|
|
323
|
+
4. Skip to **STEP 3-SIMPLE** (Combined Analysis and Planning Phase)
|
|
324
|
+
5. Note: After STEP 3-SIMPLE completes, skip separate analysis and planning phases, go directly to implementation
|
|
294
325
|
|
|
295
326
|
**IF COMPLEX complexity confirmed:**
|
|
296
|
-
1.
|
|
297
|
-
2.
|
|
298
|
-
3.
|
|
299
|
-
4.
|
|
327
|
+
1. Call `recap.set_complexity({ complexity: 'complex', reason: '[brief reason from evaluator]' })`
|
|
328
|
+
2. Display to user: "Using COMPLEX workflow: Separate analysis, planning, and implementation phases"
|
|
329
|
+
3. Mark todos #9 and #10 as completed (TRIVIAL and SIMPLE workflow steps that will not execute)
|
|
330
|
+
4. Continue to **STEP 3** (Analysis Phase)
|
|
331
|
+
5. Follow normal workflow through STEP 3, STEP 4, and STEP 5
|
|
332
|
+
|
|
333
|
+
**Note:** If the user reclassifies complexity (changes from evaluator's assessment), call `set_complexity` with the user's confirmed classification.
|
|
300
334
|
|
|
301
335
|
---
|
|
302
336
|
|
|
@@ -314,6 +348,7 @@ Execute combined analyze-and-plan agent:
|
|
|
314
348
|
- Instruct the agent: "Before making assumptions, document any assumptions clearly in question tables with your own answers."
|
|
315
349
|
- The agent should output its analysis and plan directly to the conversation
|
|
316
350
|
3. Display the analysis and plan results to the user
|
|
351
|
+
- Use `recap.add_entry` to log key technical discoveries (type: "insight") and design decisions (type: "decision")
|
|
317
352
|
{{#IF INTERACTIVE_MODE}}
|
|
318
353
|
3.5. Extract and validate assumptions (batched validation):
|
|
319
354
|
- Read the agent's output
|
|
@@ -357,6 +392,7 @@ Execute combined analyze-and-plan agent:
|
|
|
357
392
|
- Instruct the agent: "Before making assumptions, document any assumptions clearly in question tables with your own answers."
|
|
358
393
|
- The agent should output its analysis directly to the conversation
|
|
359
394
|
2. Display the analysis results to the user
|
|
395
|
+
- Use `recap.add_entry` to log significant technical findings (type: "insight" for dependencies/constraints, type: "risk" for problems identified)
|
|
360
396
|
{{#IF INTERACTIVE_MODE}}
|
|
361
397
|
2.5. Extract and validate assumptions (batched validation):
|
|
362
398
|
- Read the agent's output
|
|
@@ -401,6 +437,7 @@ Execute combined analyze-and-plan agent:
|
|
|
401
437
|
- Instruct the agent: "Before making assumptions, document any assumptions clearly in question tables with your own answers."
|
|
402
438
|
- The agent should output its plan directly to the conversation
|
|
403
439
|
2. Display the implementation plan to the user
|
|
440
|
+
- Use `recap.add_entry` to log key architectural decisions (e.g., type: "decision", content: "Chose approach A over B due to X constraint")
|
|
404
441
|
{{#IF INTERACTIVE_MODE}}
|
|
405
442
|
2.5. Extract and validate assumptions (batched validation):
|
|
406
443
|
- Read the agent's output
|
|
@@ -446,14 +483,42 @@ Execute combined analyze-and-plan agent:
|
|
|
446
483
|
- The agent should output its implementation summary directly to the conversation
|
|
447
484
|
- **CRITICAL**: If an implementation plan is provided, it contains exact file paths and line numbers. The agent MUST use these exact locations - DO NOT search for files when the plan specifies them.
|
|
448
485
|
2. Display implementation summary to user
|
|
486
|
+
- If implementation revealed unexpected issues or required pivots, use `recap.add_entry` to log them (type: "insight" or "risk")
|
|
449
487
|
3. Mark todos #17 and #18 as completed
|
|
450
488
|
4. Provide final summary
|
|
451
489
|
|
|
452
490
|
---
|
|
453
491
|
|
|
492
|
+
## Post-Workflow Help
|
|
493
|
+
|
|
494
|
+
After completing the implementation phase, tell the user:
|
|
495
|
+
*"Take your time to review the code and test the changes. I'm here if you need help with anything - just let me know if you find bugs, want additional changes, have questions, or need explanations. When you're ready to wrap up, just say so and I'll give you the next steps."*
|
|
496
|
+
|
|
497
|
+
**Wait for their response.** Do not prompt them with a question immediately.
|
|
498
|
+
|
|
499
|
+
**Handling Requests:**
|
|
500
|
+
|
|
501
|
+
When the user requests help, **prefer subagents** to preserve your context window for ongoing conversation.
|
|
502
|
+
|
|
503
|
+
| Request Type | Action |
|
|
504
|
+
|--------------|--------|
|
|
505
|
+
| Trivial (quick answer, single-line fix) | Handle directly |
|
|
506
|
+
| Bug investigation / analysis | `@agent-iloom-issue-analyzer` → present findings → offer to fix |
|
|
507
|
+
| Code changes | `@agent-iloom-issue-implementer` |
|
|
508
|
+
| New features / complex changes | `@agent-iloom-issue-analyze-and-plan` → if approved, `@agent-iloom-issue-implementer` |
|
|
509
|
+
| Deep questions (how/why something works) | `@agent-iloom-issue-analyzer` |
|
|
510
|
+
| Out-of-scope requests | Ask user: help anyway, create new issue, or skip |
|
|
511
|
+
| Ready to wrap up | Show Wrapping Up Instructions (see below) |
|
|
512
|
+
|
|
513
|
+
After handling each request, summarize what was done and confirm you're still available.
|
|
514
|
+
|
|
515
|
+
Use `recap.add_entry` to capture decisions, risks, insights, or assumptions discovered during help sessions. Do not log status updates or task completions.
|
|
516
|
+
|
|
517
|
+
---
|
|
518
|
+
|
|
454
519
|
## Wrapping Up Instructions
|
|
455
520
|
|
|
456
|
-
|
|
521
|
+
When the user says they're done or ready to wrap up, provide these instructions:
|
|
457
522
|
|
|
458
523
|
"## Wrapping Up
|
|
459
524
|
|
|
@@ -461,11 +526,6 @@ Your changes have been implemented in the current branch.
|
|
|
461
526
|
|
|
462
527
|
**Note: This was branch mode - no GitHub issue is associated with this work. Context from this session is ephemeral and not persisted.**
|
|
463
528
|
|
|
464
|
-
To complete the workflow:
|
|
465
|
-
|
|
466
|
-
1. Review and test the changes made in this session
|
|
467
|
-
2. Feel free to run run tests, lints, compilation steps to verify correctness.
|
|
468
|
-
|
|
469
529
|
If you want to track this work formally:
|
|
470
530
|
- Create a GitHub issue to document the changes
|
|
471
531
|
- Or create a pull request directly from this branch
|
|
@@ -1,21 +1,21 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
MergeManager
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-GVRO4PWE.js";
|
|
5
5
|
import {
|
|
6
6
|
GitWorktreeManager
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-3CMGCRB5.js";
|
|
8
8
|
import {
|
|
9
9
|
getWorktreeRoot,
|
|
10
10
|
isValidGitRepo
|
|
11
|
-
} from "./chunk-
|
|
12
|
-
import "./chunk-MLS5FAV7.js";
|
|
11
|
+
} from "./chunk-LN4H3A6A.js";
|
|
13
12
|
import {
|
|
14
13
|
SettingsManager
|
|
15
|
-
} from "./chunk-
|
|
16
|
-
import "./chunk-
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
14
|
+
} from "./chunk-OOU3DKNT.js";
|
|
15
|
+
import "./chunk-YZTDGPFB.js";
|
|
16
|
+
import "./chunk-RUC7OULH.js";
|
|
17
|
+
import "./chunk-VAYGNQTE.js";
|
|
18
|
+
import "./chunk-Z5NXYJIG.js";
|
|
19
19
|
import "./chunk-6UIGZD2N.js";
|
|
20
20
|
import {
|
|
21
21
|
logger
|
|
@@ -96,4 +96,4 @@ export {
|
|
|
96
96
|
RebaseCommand,
|
|
97
97
|
WorktreeValidationError
|
|
98
98
|
};
|
|
99
|
-
//# sourceMappingURL=rebase-
|
|
99
|
+
//# sourceMappingURL=rebase-WZHHE5LU.js.map
|