bobo-ai-cli 3.0.3 → 3.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (238) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +259 -259
  3. package/bundled-skills/CORE_SKILLS.txt +18 -18
  4. package/bundled-skills/backend-expert/SKILL.md +97 -97
  5. package/bundled-skills/code-review/SKILL.md +280 -280
  6. package/bundled-skills/code-review-expert/SKILL.md +85 -85
  7. package/bundled-skills/context-budget-analyzer/SKILL.md +76 -76
  8. package/bundled-skills/context-compressor/SKILL.md +75 -75
  9. package/bundled-skills/context-optimization-suite/SKILL.md +162 -162
  10. package/bundled-skills/frontend-expert/SKILL.md +93 -93
  11. package/bundled-skills/github/SKILL.md +12 -12
  12. package/bundled-skills/high-agency/SKILL.md +473 -473
  13. package/bundled-skills/high-agency/references/builder-patterns.md +126 -126
  14. package/bundled-skills/high-agency/references/recovery-playbook.md +298 -298
  15. package/bundled-skills/memory-manager/SKILL.md +214 -214
  16. package/bundled-skills/memory-manager/references/advanced-config.md +65 -65
  17. package/bundled-skills/orchestrator/SKILL.md +681 -681
  18. package/bundled-skills/planning-with-files/SKILL.md +193 -193
  19. package/bundled-skills/skill-creator/SKILL.md +220 -220
  20. package/bundled-skills/testing-expert/SKILL.md +99 -99
  21. package/bundled-skills/verify/SKILL.md +15 -15
  22. package/dist/agent.d.ts +5 -0
  23. package/dist/agent.js +11 -1
  24. package/dist/agent.js.map +1 -1
  25. package/dist/agents/catalog.d.ts +47 -0
  26. package/dist/agents/catalog.js +63 -5
  27. package/dist/agents/catalog.js.map +1 -1
  28. package/dist/agents/router.d.ts +12 -1
  29. package/dist/agents/router.js +43 -3
  30. package/dist/agents/router.js.map +1 -1
  31. package/dist/agents/spawn.js +36 -18
  32. package/dist/agents/spawn.js.map +1 -1
  33. package/dist/autonomous.js +5 -5
  34. package/dist/cli.js +23 -21
  35. package/dist/cli.js.map +1 -1
  36. package/dist/compactor.js +39 -39
  37. package/dist/dream.js +29 -29
  38. package/dist/image-input.d.ts +44 -0
  39. package/dist/image-input.js +161 -0
  40. package/dist/image-input.js.map +1 -0
  41. package/dist/memory.js +13 -13
  42. package/dist/project.js +15 -15
  43. package/dist/repl.js +88 -0
  44. package/dist/repl.js.map +1 -1
  45. package/dist/skills.js +54 -54
  46. package/dist/sub-agents.js +65 -65
  47. package/dist/tools/browser.js +21 -21
  48. package/dist/tools/claude-code.js +10 -10
  49. package/dist/web.js +7 -7
  50. package/dist/wiki-commands.d.ts +2 -0
  51. package/dist/wiki-commands.js +249 -0
  52. package/dist/wiki-commands.js.map +1 -0
  53. package/dist/wiki.d.ts +90 -0
  54. package/dist/wiki.js +614 -0
  55. package/dist/wiki.js.map +1 -0
  56. package/knowledge/advanced-patterns.md +70 -70
  57. package/knowledge/agent-directives.md +74 -74
  58. package/knowledge/api-integration-patterns.md +102 -0
  59. package/knowledge/code-review-protocol.md +69 -0
  60. package/knowledge/dream.md +36 -36
  61. package/knowledge/engineering.md +52 -46
  62. package/knowledge/error-catalog.md +38 -33
  63. package/knowledge/event-driven-architecture.md +43 -0
  64. package/knowledge/external-alignment.md +47 -0
  65. package/knowledge/high-agency.md +73 -0
  66. package/knowledge/image-generation.md +48 -0
  67. package/knowledge/index.json +194 -169
  68. package/knowledge/llm-wiki-pattern.md +71 -0
  69. package/knowledge/long-task-management.md +79 -0
  70. package/knowledge/memory/cache-optimization-and-skill-integration.md +102 -102
  71. package/knowledge/memory/engineering-patterns.md +134 -134
  72. package/knowledge/memory/feedback_root_structure.md +15 -15
  73. package/knowledge/memory/project-contexts.md +69 -69
  74. package/knowledge/memory/tools-and-services.md +85 -85
  75. package/knowledge/memory-management.md +72 -0
  76. package/knowledge/rules/advisor-strategy.md +204 -0
  77. package/knowledge/rules/agents.md +62 -62
  78. package/knowledge/rules/blocking-rules.md +323 -323
  79. package/knowledge/rules/cache-management.md +379 -379
  80. package/knowledge/rules/capability-evolution.md +132 -132
  81. package/knowledge/rules/coding.md +126 -126
  82. package/knowledge/rules/engineering-workflows.md +225 -225
  83. package/knowledge/rules/evomap-content-guidelines.md +354 -354
  84. package/knowledge/rules/evomap-guide.md +224 -224
  85. package/knowledge/rules/external-alignment.md +22 -0
  86. package/knowledge/rules/git.md +31 -31
  87. package/knowledge/rules/hooks.md +106 -106
  88. package/knowledge/rules/performance.md +101 -101
  89. package/knowledge/rules/remotion-auto-production.md +1120 -1120
  90. package/knowledge/rules/security.md +46 -46
  91. package/knowledge/rules/testing.md +32 -32
  92. package/knowledge/rules/work-mode.md +208 -208
  93. package/knowledge/rules.md +62 -62
  94. package/knowledge/self-evolution.md +78 -0
  95. package/knowledge/self-rationalization-guard.md +52 -0
  96. package/knowledge/skills/Skill_Seekers.md +1722 -1722
  97. package/knowledge/skills/ab-test-setup.md +557 -557
  98. package/knowledge/skills/agent-sdk-dev.md +238 -238
  99. package/knowledge/skills/agent-tools.md +136 -136
  100. package/knowledge/skills/analytics-tracking.md +597 -597
  101. package/knowledge/skills/artifacts-builder.md +89 -89
  102. package/knowledge/skills/asana.md +12 -12
  103. package/knowledge/skills/backend-expert.md +97 -97
  104. package/knowledge/skills/brand-voice.md +481 -481
  105. package/knowledge/skills/browser-use.md +419 -419
  106. package/knowledge/skills/cache-optimization-skill.md +179 -179
  107. package/knowledge/skills/canvas-design.md +147 -147
  108. package/knowledge/skills/citation-validator.md +203 -203
  109. package/knowledge/skills/clangd-lsp.md +52 -52
  110. package/knowledge/skills/code-review-expert.md +85 -85
  111. package/knowledge/skills/code-review.md +280 -280
  112. package/knowledge/skills/code-simplifier.md +12 -12
  113. package/knowledge/skills/commit-commands.md +258 -258
  114. package/knowledge/skills/competitor-alternatives.md +795 -795
  115. package/knowledge/skills/content-atomizer.md +910 -910
  116. package/knowledge/skills/content-research-writer.md +605 -605
  117. package/knowledge/skills/context-optimization-suite.md +162 -162
  118. package/knowledge/skills/context7.md +12 -12
  119. package/knowledge/skills/copy-editing.md +494 -494
  120. package/knowledge/skills/copywriting.md +510 -510
  121. package/knowledge/skills/csharp-lsp.md +40 -40
  122. package/knowledge/skills/decision-making-framework.md +154 -154
  123. package/knowledge/skills/developer-growth-analysis.md +335 -335
  124. package/knowledge/skills/direct-response-copy.md +2336 -2336
  125. package/knowledge/skills/docker-expert.md +229 -229
  126. package/knowledge/skills/document-skills.md +12 -12
  127. package/knowledge/skills/documentation-expert.md +126 -126
  128. package/knowledge/skills/email-sequence.md +1061 -1061
  129. package/knowledge/skills/email-sequences.md +910 -910
  130. package/knowledge/skills/example-plugin.md +72 -72
  131. package/knowledge/skills/explanatory-output-style.md +82 -82
  132. package/knowledge/skills/feature-dev.md +458 -458
  133. package/knowledge/skills/file-organizer.md +466 -466
  134. package/knowledge/skills/firebase.disabled.md +12 -12
  135. package/knowledge/skills/form-cro.md +488 -488
  136. package/knowledge/skills/free-tool-strategy.md +636 -636
  137. package/knowledge/skills/frontend-design-offical.md +55 -55
  138. package/knowledge/skills/frontend-design.md +41 -41
  139. package/knowledge/skills/frontend-expert.md +93 -93
  140. package/knowledge/skills/github.md +12 -12
  141. package/knowledge/skills/gitlab.md +12 -12
  142. package/knowledge/skills/gopls-lsp.md +32 -32
  143. package/knowledge/skills/got-controller.md +218 -218
  144. package/knowledge/skills/greptile.md +72 -72
  145. package/knowledge/skills/hookify.md +376 -376
  146. package/knowledge/skills/image-editor.md +189 -189
  147. package/knowledge/skills/image-enhancer.md +109 -109
  148. package/knowledge/skills/jdtls-lsp.md +49 -49
  149. package/knowledge/skills/json-canvas.md +654 -654
  150. package/knowledge/skills/keyword-research.md +559 -559
  151. package/knowledge/skills/kotlin-lsp.md +28 -28
  152. package/knowledge/skills/laravel-boost.md +12 -12
  153. package/knowledge/skills/launch-strategy.md +394 -394
  154. package/knowledge/skills/lead-magnet.md +393 -393
  155. package/knowledge/skills/learning-output-style.md +106 -106
  156. package/knowledge/skills/linear.md +12 -12
  157. package/knowledge/skills/lua-lsp.md +47 -47
  158. package/knowledge/skills/marketing-ideas.md +720 -720
  159. package/knowledge/skills/marketing-psychology.md +534 -534
  160. package/knowledge/skills/mcp-builder.md +369 -369
  161. package/knowledge/skills/meeting-insights-analyzer.md +347 -347
  162. package/knowledge/skills/memory-evolution-system.md +172 -172
  163. package/knowledge/skills/multi-lens-thinking.md +407 -407
  164. package/knowledge/skills/nano-banana-pro.md +116 -116
  165. package/knowledge/skills/newsletter.md +736 -736
  166. package/knowledge/skills/notebooklm.md +296 -296
  167. package/knowledge/skills/obsidian-bases.md +634 -634
  168. package/knowledge/skills/obsidian-markdown.md +651 -651
  169. package/knowledge/skills/onboarding-cro.md +494 -494
  170. package/knowledge/skills/orchestrator.md +681 -681
  171. package/knowledge/skills/page-cro.md +379 -379
  172. package/knowledge/skills/paid-ads.md +624 -624
  173. package/knowledge/skills/paywall-upgrade-cro.md +651 -651
  174. package/knowledge/skills/php-lsp.md +36 -36
  175. package/knowledge/skills/planning-with-files.md +193 -193
  176. package/knowledge/skills/playwright.md +12 -12
  177. package/knowledge/skills/plugin-dev.md +434 -434
  178. package/knowledge/skills/popup-cro.md +520 -520
  179. package/knowledge/skills/positioning-angles.md +330 -330
  180. package/knowledge/skills/pr-review-toolkit.md +359 -359
  181. package/knowledge/skills/pricing-strategy.md +777 -777
  182. package/knowledge/skills/programmatic-seo.md +714 -714
  183. package/knowledge/skills/pyright-lsp.md +43 -43
  184. package/knowledge/skills/quality-assurance-framework.md +168 -168
  185. package/knowledge/skills/question-refiner.md +160 -160
  186. package/knowledge/skills/ralph-loop.md +205 -205
  187. package/knowledge/skills/refactoring-expert.md +103 -103
  188. package/knowledge/skills/referral-program.md +668 -668
  189. package/knowledge/skills/research-executor.md +164 -164
  190. package/knowledge/skills/review-with-security.md +12 -12
  191. package/knowledge/skills/rust-analyzer-lsp.md +50 -50
  192. package/knowledge/skills/schema-markup.md +647 -647
  193. package/knowledge/skills/security-audit-expert.md +124 -124
  194. package/knowledge/skills/security-expert.md +140 -140
  195. package/knowledge/skills/security-guidance.md +12 -12
  196. package/knowledge/skills/seedance-prompt.md +139 -139
  197. package/knowledge/skills/self-evolution.md +1160 -1160
  198. package/knowledge/skills/seo-audit.md +432 -432
  199. package/knowledge/skills/seo-content.md +787 -787
  200. package/knowledge/skills/serena.md +12 -12
  201. package/knowledge/skills/signup-flow-cro.md +409 -409
  202. package/knowledge/skills/skill-creator.md +220 -220
  203. package/knowledge/skills/skill-manager.md +226 -226
  204. package/knowledge/skills/skill-share.md +98 -98
  205. package/knowledge/skills/slack.md +12 -12
  206. package/knowledge/skills/social-content.md +878 -878
  207. package/knowledge/skills/spec-flow-skill.md +124 -124
  208. package/knowledge/skills/stripe.md +12 -12
  209. package/knowledge/skills/supabase.md +12 -12
  210. package/knowledge/skills/swift-lsp.md +40 -40
  211. package/knowledge/skills/synthesizer.md +236 -236
  212. package/knowledge/skills/template-skill.md +16 -16
  213. package/knowledge/skills/testing-expert.md +99 -99
  214. package/knowledge/skills/theme-factory.md +72 -72
  215. package/knowledge/skills/tiktok-research.md +208 -208
  216. package/knowledge/skills/typescript-lsp.md +36 -36
  217. package/knowledge/skills/ui-ux-pro-max.md +247 -247
  218. package/knowledge/skills/verify.md +15 -15
  219. package/knowledge/skills/visual-prompt-engineer.md +102 -102
  220. package/knowledge/skills/webapp-testing.md +111 -111
  221. package/knowledge/skills/wide-research.md +191 -191
  222. package/knowledge/system.md +93 -93
  223. package/knowledge/task-router.md +46 -37
  224. package/knowledge/verification.md +38 -38
  225. package/knowledge/worker-prompt-craft.md +66 -0
  226. package/knowledge/workflows/3d-viz.md +47 -47
  227. package/knowledge/workflows/data-pipeline.md +47 -47
  228. package/knowledge/workflows/db-migration.md +51 -51
  229. package/knowledge/workflows/feature-dev.md +41 -41
  230. package/knowledge/workflows/tdd-flow.md +52 -52
  231. package/knowledge/workflows/ui-verify.md +51 -51
  232. package/package.json +74 -74
  233. package/dist/claude-bridge.d.ts +0 -18
  234. package/dist/claude-bridge.js +0 -91
  235. package/dist/claude-bridge.js.map +0 -1
  236. package/dist/tools/claude-bridge-tool.d.ts +0 -4
  237. package/dist/tools/claude-bridge-tool.js +0 -44
  238. package/dist/tools/claude-bridge-tool.js.map +0 -1
@@ -1,52 +1,52 @@
1
- ---
2
- id: tdd-flow
3
- title: "TDD Full Flow"
4
- type: tdd
5
- triggers: [new feature, bug fix, refactor, critical logic]
6
- checklist: [Tests pass, Coverage >= 80%, Edge cases covered, Property tests for critical paths]
7
- ---
8
-
9
- # TDD Full Flow
10
-
11
- ## Triggers
12
- - new feature
13
- - bug fix
14
- - refactor
15
- - critical logic
16
-
17
- ## Steps
18
- ### Step 1: Plan architecture
19
- Use sequential thinking to plan the architecture
20
- - Action: `plan`
21
- - Depends on: none
22
-
23
- ### Step 2: RED - Write failing tests
24
- Write unit tests covering all edge cases - must FAIL
25
- - Action: `write-test`
26
- - Depends on: plan
27
-
28
- ### Step 3: GREEN - Minimal implementation
29
- Write minimal code to make tests pass
30
- - Action: `implement`
31
- - Depends on: write-test
32
-
33
- ### Step 4: REFACTOR
34
- Clean up code while keeping tests green
35
- - Action: `refactor`
36
- - Depends on: implement
37
-
38
- ### Step 5: Property tests
39
- Add property-based tests for critical functions
40
- - Action: `property-test`
41
- - Depends on: refactor
42
-
43
- ### Step 6: Mutation tests
44
- Verify test quality with mutation testing
45
- - Action: `mutation-test`
46
- - Depends on: property-test
47
-
48
- ## Checklist
49
- - [ ] Tests pass
50
- - [ ] Coverage >= 80%
51
- - [ ] Edge cases covered
52
- - [ ] Property tests for critical paths
1
+ ---
2
+ id: tdd-flow
3
+ title: "TDD Full Flow"
4
+ type: tdd
5
+ triggers: [new feature, bug fix, refactor, critical logic]
6
+ checklist: [Tests pass, Coverage >= 80%, Edge cases covered, Property tests for critical paths]
7
+ ---
8
+
9
+ # TDD Full Flow
10
+
11
+ ## Triggers
12
+ - new feature
13
+ - bug fix
14
+ - refactor
15
+ - critical logic
16
+
17
+ ## Steps
18
+ ### Step 1: Plan architecture
19
+ Use sequential thinking to plan the architecture
20
+ - Action: `plan`
21
+ - Depends on: none
22
+
23
+ ### Step 2: RED - Write failing tests
24
+ Write unit tests covering all edge cases - must FAIL
25
+ - Action: `write-test`
26
+ - Depends on: plan
27
+
28
+ ### Step 3: GREEN - Minimal implementation
29
+ Write minimal code to make tests pass
30
+ - Action: `implement`
31
+ - Depends on: write-test
32
+
33
+ ### Step 4: REFACTOR
34
+ Clean up code while keeping tests green
35
+ - Action: `refactor`
36
+ - Depends on: implement
37
+
38
+ ### Step 5: Property tests
39
+ Add property-based tests for critical functions
40
+ - Action: `property-test`
41
+ - Depends on: refactor
42
+
43
+ ### Step 6: Mutation tests
44
+ Verify test quality with mutation testing
45
+ - Action: `mutation-test`
46
+ - Depends on: property-test
47
+
48
+ ## Checklist
49
+ - [ ] Tests pass
50
+ - [ ] Coverage >= 80%
51
+ - [ ] Edge cases covered
52
+ - [ ] Property tests for critical paths
@@ -1,51 +1,51 @@
1
- ---
2
- id: ui-verify
3
- title: "UI Verification Loop"
4
- type: ui-verify
5
- triggers: [UI modify, frontend change, component update]
6
- checklist: [App starts, Visual elements render, No console errors, Responsive layout]
7
- ---
8
-
9
- # UI Verification Loop
10
-
11
- ## Triggers
12
- - UI modify
13
- - frontend change
14
- - component update
15
-
16
- ## Steps
17
- ### Step 1: Complete code modification
18
- Finish all UI code changes
19
- - Action: `code`
20
- - Depends on: none
21
-
22
- ### Step 2: Start dev server
23
- Run npm run dev to start the application
24
- - Action: `npm run dev`
25
- - Depends on: code
26
-
27
- ### Step 3: Navigate to component
28
- Open browser and navigate to affected component
29
- - Action: `navigate`
30
- - Depends on: npm run dev
31
-
32
- ### Step 4: Verify visual rendering
33
- Check visual elements render correctly
34
- - Action: `verify`
35
- - Depends on: navigate
36
-
37
- ### Step 5: Check console errors
38
- Open DevTools and verify no console errors
39
- - Action: `check-console`
40
- - Depends on: navigate
41
-
42
- ### Step 6: Mark complete
43
- Only mark task complete after visual verification
44
- - Action: `complete`
45
- - Depends on: verify, check-console
46
-
47
- ## Checklist
48
- - [ ] App starts
49
- - [ ] Visual elements render
50
- - [ ] No console errors
51
- - [ ] Responsive layout
1
+ ---
2
+ id: ui-verify
3
+ title: "UI Verification Loop"
4
+ type: ui-verify
5
+ triggers: [UI modify, frontend change, component update]
6
+ checklist: [App starts, Visual elements render, No console errors, Responsive layout]
7
+ ---
8
+
9
+ # UI Verification Loop
10
+
11
+ ## Triggers
12
+ - UI modify
13
+ - frontend change
14
+ - component update
15
+
16
+ ## Steps
17
+ ### Step 1: Complete code modification
18
+ Finish all UI code changes
19
+ - Action: `code`
20
+ - Depends on: none
21
+
22
+ ### Step 2: Start dev server
23
+ Run npm run dev to start the application
24
+ - Action: `npm run dev`
25
+ - Depends on: code
26
+
27
+ ### Step 3: Navigate to component
28
+ Open browser and navigate to affected component
29
+ - Action: `navigate`
30
+ - Depends on: npm run dev
31
+
32
+ ### Step 4: Verify visual rendering
33
+ Check visual elements render correctly
34
+ - Action: `verify`
35
+ - Depends on: navigate
36
+
37
+ ### Step 5: Check console errors
38
+ Open DevTools and verify no console errors
39
+ - Action: `check-console`
40
+ - Depends on: navigate
41
+
42
+ ### Step 6: Mark complete
43
+ Only mark task complete after visual verification
44
+ - Action: `complete`
45
+ - Depends on: verify, check-console
46
+
47
+ ## Checklist
48
+ - [ ] App starts
49
+ - [ ] Visual elements render
50
+ - [ ] No console errors
51
+ - [ ] Responsive layout
package/package.json CHANGED
@@ -1,74 +1,74 @@
1
- {
2
- "name": "bobo-ai-cli",
3
- "version": "3.0.3",
4
- "description": "Portable AI engineering assistant CLI with embedded knowledge, skills, and memory",
5
- "type": "module",
6
- "main": "dist/index.js",
7
- "bin": {
8
- "bobo": "dist/index.js"
9
- },
10
- "files": [
11
- "dist/",
12
- "knowledge/",
13
- "bundled-skills/CORE_SKILLS.txt",
14
- "bundled-skills/high-agency/",
15
- "bundled-skills/memory-manager/",
16
- "bundled-skills/context-budget-analyzer/",
17
- "bundled-skills/context-compressor/",
18
- "bundled-skills/context-optimization-suite/",
19
- "bundled-skills/code-review/",
20
- "bundled-skills/code-review-expert/",
21
- "bundled-skills/planning-with-files/",
22
- "bundled-skills/verify/",
23
- "bundled-skills/skill-creator/",
24
- "bundled-skills/github/",
25
- "bundled-skills/backend-expert/",
26
- "bundled-skills/frontend-expert/",
27
- "bundled-skills/testing-expert/",
28
- "bundled-skills/orchestrator/",
29
- "README.md",
30
- "LICENSE"
31
- ],
32
- "scripts": {
33
- "build": "tsc",
34
- "dev": "tsx src/index.ts",
35
- "start": "node dist/index.js",
36
- "test": "vitest run",
37
- "kb:extract": "node scripts/extract-knowledge.mjs",
38
- "kb:validate": "node scripts/validate-knowledge.mjs",
39
- "pack:check": "npm pack --dry-run",
40
- "prepack": "npm run build"
41
- },
42
- "keywords": [
43
- "ai",
44
- "cli",
45
- "assistant",
46
- "agent",
47
- "llm",
48
- "engineering"
49
- ],
50
- "author": "bobooo",
51
- "license": "MIT",
52
- "repository": {
53
- "type": "git",
54
- "url": "git+https://github.com/Arxchibobo/bobo-cli.git"
55
- },
56
- "homepage": "https://github.com/Arxchibobo/bobo-cli#readme",
57
- "bugs": {
58
- "url": "https://github.com/Arxchibobo/bobo-cli/issues"
59
- },
60
- "dependencies": {
61
- "chalk": "^5.3.0",
62
- "commander": "^12.1.0",
63
- "glob": "^11.0.0",
64
- "gray-matter": "^4.0.3",
65
- "openai": "^4.73.0",
66
- "zod": "^3.25.76"
67
- },
68
- "devDependencies": {
69
- "@types/node": "^22.0.0",
70
- "tsx": "^4.19.0",
71
- "typescript": "^5.6.0",
72
- "vitest": "^4.1.2"
73
- }
74
- }
1
+ {
2
+ "name": "bobo-ai-cli",
3
+ "version": "3.0.5",
4
+ "description": "Portable AI engineering assistant CLI with embedded knowledge, skills, and memory",
5
+ "type": "module",
6
+ "main": "dist/index.js",
7
+ "bin": {
8
+ "bobo": "dist/index.js"
9
+ },
10
+ "files": [
11
+ "dist/",
12
+ "knowledge/",
13
+ "bundled-skills/CORE_SKILLS.txt",
14
+ "bundled-skills/high-agency/",
15
+ "bundled-skills/memory-manager/",
16
+ "bundled-skills/context-budget-analyzer/",
17
+ "bundled-skills/context-compressor/",
18
+ "bundled-skills/context-optimization-suite/",
19
+ "bundled-skills/code-review/",
20
+ "bundled-skills/code-review-expert/",
21
+ "bundled-skills/planning-with-files/",
22
+ "bundled-skills/verify/",
23
+ "bundled-skills/skill-creator/",
24
+ "bundled-skills/github/",
25
+ "bundled-skills/backend-expert/",
26
+ "bundled-skills/frontend-expert/",
27
+ "bundled-skills/testing-expert/",
28
+ "bundled-skills/orchestrator/",
29
+ "README.md",
30
+ "LICENSE"
31
+ ],
32
+ "scripts": {
33
+ "build": "tsc",
34
+ "dev": "tsx src/index.ts",
35
+ "start": "node dist/index.js",
36
+ "test": "vitest run",
37
+ "kb:extract": "node scripts/extract-knowledge.mjs",
38
+ "kb:validate": "node scripts/validate-knowledge.mjs",
39
+ "pack:check": "npm pack --dry-run",
40
+ "prepack": "npm run build"
41
+ },
42
+ "keywords": [
43
+ "ai",
44
+ "cli",
45
+ "assistant",
46
+ "agent",
47
+ "llm",
48
+ "engineering"
49
+ ],
50
+ "author": "bobooo",
51
+ "license": "MIT",
52
+ "repository": {
53
+ "type": "git",
54
+ "url": "git+https://github.com/Arxchibobo/bobo-cli.git"
55
+ },
56
+ "homepage": "https://github.com/Arxchibobo/bobo-cli#readme",
57
+ "bugs": {
58
+ "url": "https://github.com/Arxchibobo/bobo-cli/issues"
59
+ },
60
+ "dependencies": {
61
+ "chalk": "^5.3.0",
62
+ "commander": "^12.1.0",
63
+ "glob": "^11.0.0",
64
+ "gray-matter": "^4.0.3",
65
+ "openai": "^4.73.0",
66
+ "zod": "^3.25.76"
67
+ },
68
+ "devDependencies": {
69
+ "@types/node": "^22.0.0",
70
+ "tsx": "^4.19.0",
71
+ "typescript": "^5.6.0",
72
+ "vitest": "^4.1.2"
73
+ }
74
+ }
@@ -1,18 +0,0 @@
1
- export interface ClaudeBridgeOptions {
2
- task: string;
3
- cwd?: string;
4
- model?: string;
5
- maxTimeout?: number;
6
- systemPromptAppend?: string;
7
- outputFormat?: 'text' | 'json';
8
- }
9
- export interface ClaudeBridgeResult {
10
- success: boolean;
11
- output: string;
12
- exitCode: number | null;
13
- durationMs: number;
14
- error?: string;
15
- }
16
- export declare function isClaudeAvailable(): boolean;
17
- export declare function delegateToClaude(options: ClaudeBridgeOptions): ClaudeBridgeResult;
18
- export declare function delegateToClaudeFile(options: ClaudeBridgeOptions): ClaudeBridgeResult;
@@ -1,91 +0,0 @@
1
- import { execSync } from 'node:child_process';
2
- import { existsSync, mkdtempSync, writeFileSync, readFileSync, rmSync } from 'node:fs';
3
- import { join } from 'node:path';
4
- import { tmpdir } from 'node:os';
5
- function findClaudeCli() {
6
- try {
7
- const result = execSync('where claude 2>nul || which claude 2>/dev/null', {
8
- encoding: 'utf-8',
9
- timeout: 5000,
10
- stdio: ['pipe', 'pipe', 'pipe'],
11
- });
12
- const path = result.trim().split('\n')[0].trim();
13
- return path && existsSync(path) ? path : null;
14
- }
15
- catch {
16
- return null;
17
- }
18
- }
19
- export function isClaudeAvailable() {
20
- return findClaudeCli() !== null;
21
- }
22
- export function delegateToClaude(options) {
23
- const claudePath = findClaudeCli();
24
- if (!claudePath) {
25
- return {
26
- success: false,
27
- output: '',
28
- exitCode: null,
29
- durationMs: 0,
30
- error: 'Claude Code CLI not found. Install: npm install -g @anthropic-ai/claude-code',
31
- };
32
- }
33
- const startTime = Date.now();
34
- const cwd = options.cwd || process.cwd();
35
- const timeout = (options.maxTimeout || 120) * 1000;
36
- const args = ['-p', options.task];
37
- if (options.model)
38
- args.push('--model', options.model);
39
- if (options.outputFormat === 'json')
40
- args.push('--output-format', 'json');
41
- if (options.systemPromptAppend)
42
- args.push('--append-system-prompt', options.systemPromptAppend);
43
- try {
44
- const result = execSync(`claude ${args.map(a => `"${a.replace(/"/g, '\\"')}"`).join(' ')}`, {
45
- cwd,
46
- encoding: 'utf-8',
47
- timeout,
48
- maxBuffer: 10 * 1024 * 1024,
49
- stdio: ['pipe', 'pipe', 'pipe'],
50
- });
51
- return {
52
- success: true,
53
- output: result.trim(),
54
- exitCode: 0,
55
- durationMs: Date.now() - startTime,
56
- };
57
- }
58
- catch (e) {
59
- const err = e;
60
- const output = (err.stdout || '').trim();
61
- const stderr = (err.stderr || '').trim();
62
- return {
63
- success: false,
64
- output: output || stderr,
65
- exitCode: err.status ?? 1,
66
- durationMs: Date.now() - startTime,
67
- error: stderr || `Claude Code exited with code ${err.status}`,
68
- };
69
- }
70
- }
71
- export function delegateToClaudeFile(options) {
72
- const task = options.task;
73
- if (task.length < 4000) {
74
- return delegateToClaude(options);
75
- }
76
- const tmpDir = mkdtempSync(join(tmpdir(), 'bobo-claude-'));
77
- const taskFile = join(tmpDir, 'task.txt');
78
- writeFileSync(taskFile, task, 'utf-8');
79
- try {
80
- const fileContent = readFileSync(taskFile, 'utf-8');
81
- const opts = { ...options, task: fileContent };
82
- return delegateToClaude(opts);
83
- }
84
- finally {
85
- try {
86
- rmSync(tmpDir, { recursive: true });
87
- }
88
- catch { /* ignore */ }
89
- }
90
- }
91
- //# sourceMappingURL=claude-bridge.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude-bridge.js","sourceRoot":"","sources":["../src/claude-bridge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAS,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AACvF,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,SAAS,CAAC;AAmBjC,SAAS,aAAa;IACpB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,gDAAgD,EAAE;YACxE,QAAQ,EAAE,OAAO;YACjB,OAAO,EAAE,IAAI;YACb,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;QACjD,OAAO,IAAI,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;IAChD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,OAAO,aAAa,EAAE,KAAK,IAAI,CAAC;AAClC,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAA4B;IAC3D,MAAM,UAAU,GAAG,aAAa,EAAE,CAAC;IACnC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,EAAE;YACV,QAAQ,EAAE,IAAI;YACd,UAAU,EAAE,CAAC;YACb,KAAK,EAAE,8EAA8E;SACtF,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IAC7B,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,CAAC,OAAO,CAAC,UAAU,IAAI,GAAG,CAAC,GAAG,IAAI,CAAC;IAEnD,MAAM,IAAI,GAAa,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,IAAI,OAAO,CAAC,KAAK;QAAE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;IACvD,IAAI,OAAO,CAAC,YAAY,KAAK,MAAM;QAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,EAAE,MAAM,CAAC,CAAC;IAC1E,IAAI,OAAO,CAAC,kBAAkB;QAAE,IAAI,CAAC,IAAI,CAAC,wBAAwB,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAEhG,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;YAC1F,GAAG;YACH,QAAQ,EAAE,OAAO;YACjB,OAAO;YACP,SAAS,EAAE,EAAE,GAAG,IAAI,GAAG,IAAI;YAC3B,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;SAChC,CAAC,CAAC;QAEH,OAAO;YACL,OAAO,EAAE,IAAI;YACb,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE;YACrB,QAAQ,EAAE,CAAC;YACX,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;SACnC,CAAC;IACJ,CAAC;IAAC,OAAO,CAAU,EAAE,CAAC;QACpB,MAAM,GAAG,GAAG,CAA0D,CAAC;QACvE,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACzC,MAAM,MAAM,GAAG,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAEzC,OAAO;YACL,OAAO,EAAE,KAAK;YACd,MAAM,EAAE,MAAM,IAAI,MAAM;YACxB,QAAQ,EAAE,GAAG,CAAC,MAAM,IAAI,CAAC;YACzB,UAAU,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;YAClC,KAAK,EAAE,MAAM,IAAI,gCAAgC,GAAG,CAAC,MAAM,EAAE;SAC9D,CAAC;IACJ,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAA4B;IAC/D,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC1B,IAAI,IAAI,CAAC,MAAM,GAAG,IAAI,EAAE,CAAC;QACvB,OAAO,gBAAgB,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAED,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,MAAM,EAAE,EAAE,cAAc,CAAC,CAAC,CAAC;IAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAC1C,aAAa,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;IAEvC,IAAI,CAAC;QACH,MAAM,WAAW,GAAG,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,CAAC;QAC/C,OAAO,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAChC,CAAC;YAAS,CAAC;QACT,IAAI,CAAC;YAAC,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;IACrE,CAAC;AACH,CAAC"}
@@ -1,4 +0,0 @@
1
- import type { ChatCompletionTool } from 'openai/resources/index.js';
2
- export declare const claudeBridgeToolDefinitions: ChatCompletionTool[];
3
- export declare function isClaudeBridgeTool(name: string): boolean;
4
- export declare function executeClaudeBridgeTool(args: Record<string, unknown>): Promise<string>;
@@ -1,44 +0,0 @@
1
- import { delegateToClaudeFile, isClaudeAvailable } from '../claude-bridge.js';
2
- export const claudeBridgeToolDefinitions = [
3
- {
4
- type: 'function',
5
- function: {
6
- name: 'delegate_claude',
7
- description: 'Delegate a heavy engineering or long-running task to local Claude Code CLI and return its result.',
8
- parameters: {
9
- type: 'object',
10
- properties: {
11
- task: { type: 'string', description: 'Task prompt to send to Claude Code' },
12
- cwd: { type: 'string', description: 'Working directory for Claude Code' },
13
- model: { type: 'string', description: 'Optional Claude model override' },
14
- maxTimeout: { type: 'number', description: 'Timeout in seconds (default 120)' },
15
- systemPromptAppend: { type: 'string', description: 'Extra system prompt appended to Claude Code' },
16
- outputFormat: { type: 'string', enum: ['text', 'json'], description: 'Claude output format' },
17
- },
18
- required: ['task'],
19
- },
20
- },
21
- },
22
- ];
23
- export function isClaudeBridgeTool(name) {
24
- return name === 'delegate_claude';
25
- }
26
- export async function executeClaudeBridgeTool(args) {
27
- if (!isClaudeAvailable()) {
28
- return 'Error: Claude Code CLI is not available in PATH';
29
- }
30
- const result = delegateToClaudeFile({
31
- task: args.task,
32
- cwd: args.cwd,
33
- model: args.model,
34
- maxTimeout: args.maxTimeout,
35
- systemPromptAppend: args.systemPromptAppend,
36
- outputFormat: args.outputFormat || 'text',
37
- });
38
- const duration = `${(result.durationMs / 1000).toFixed(1)}s`;
39
- if (result.success) {
40
- return `Claude Code delegation succeeded in ${duration}\n\n${result.output}`.trim();
41
- }
42
- return `Claude Code delegation failed in ${duration}\nExit code: ${result.exitCode ?? 'unknown'}\n${result.error || result.output}`.trim();
43
- }
44
- //# sourceMappingURL=claude-bridge-tool.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"claude-bridge-tool.js","sourceRoot":"","sources":["../../src/tools/claude-bridge-tool.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAE9E,MAAM,CAAC,MAAM,2BAA2B,GAAyB;IAC/D;QACE,IAAI,EAAE,UAAU;QAChB,QAAQ,EAAE;YACR,IAAI,EAAE,iBAAiB;YACvB,WAAW,EAAE,mGAAmG;YAChH,UAAU,EAAE;gBACV,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE;oBACV,IAAI,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,oCAAoC,EAAE;oBAC3E,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,mCAAmC,EAAE;oBACzE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,gCAAgC,EAAE;oBACxE,UAAU,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,kCAAkC,EAAE;oBAC/E,kBAAkB,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,6CAA6C,EAAE;oBAClG,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,EAAE,sBAAsB,EAAE;iBAC9F;gBACD,QAAQ,EAAE,CAAC,MAAM,CAAC;aACnB;SACF;KACF;CACF,CAAC;AAEF,MAAM,UAAU,kBAAkB,CAAC,IAAY;IAC7C,OAAO,IAAI,KAAK,iBAAiB,CAAC;AACpC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,IAA6B;IACzE,IAAI,CAAC,iBAAiB,EAAE,EAAE,CAAC;QACzB,OAAO,iDAAiD,CAAC;IAC3D,CAAC;IAED,MAAM,MAAM,GAAG,oBAAoB,CAAC;QAClC,IAAI,EAAE,IAAI,CAAC,IAAc;QACzB,GAAG,EAAE,IAAI,CAAC,GAAyB;QACnC,KAAK,EAAE,IAAI,CAAC,KAA2B;QACvC,UAAU,EAAE,IAAI,CAAC,UAAgC;QACjD,kBAAkB,EAAE,IAAI,CAAC,kBAAwC;QACjE,YAAY,EAAG,IAAI,CAAC,YAA4C,IAAI,MAAM;KAC3E,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IAC7D,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACnB,OAAO,uCAAuC,QAAQ,OAAO,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;IACtF,CAAC;IAED,OAAO,oCAAoC,QAAQ,gBAAgB,MAAM,CAAC,QAAQ,IAAI,SAAS,KAAK,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,CAAC;AAC7I,CAAC"}