codemini-cli 0.1.16 → 0.1.17
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/OPERATIONS.md +1 -0
- package/README.md +2 -0
- package/package.json +1 -1
- package/skills/brainstorm/SKILL.md +13 -49
- package/skills/superpowers-lite/SKILL.md +13 -6
- package/souls/caveman.md +3 -0
- package/souls/ceo.md +3 -0
- package/souls/pirate.md +3 -0
- package/src/cli.js +1 -1
- package/src/core/chat-runtime.js +1 -1
- package/src/core/command-policy.js +4 -4
package/OPERATIONS.md
CHANGED
package/README.md
CHANGED
|
@@ -28,6 +28,7 @@ It is designed for teams that want a coding assistant that feels practical, cont
|
|
|
28
28
|
- Structured code tools for small models: `locate`, `open_target`, `edit_target`
|
|
29
29
|
- More conservative `plan auto` acceptance checks with reviewer/tester goal checklists
|
|
30
30
|
- Tone presets through `soul`, without changing plans or code behavior
|
|
31
|
+
- Example soul presets include `professional`, `playful`, `anime`, `pirate`, `caveman`, and `ceo`
|
|
31
32
|
- Sub-agents for planning, coding, review, and testing
|
|
32
33
|
|
|
33
34
|
### Quick Start
|
|
@@ -142,6 +143,7 @@ CodeMini CLI 是一个为小模型工作流优化过的代码助手 CLI,重点
|
|
|
142
143
|
- 为小模型补了结构化代码工具:`locate`、`open_target`、`edit_target`
|
|
143
144
|
- `plan auto` 会基于原始目标生成验收清单,并更保守地处理 reviewer/tester 结果
|
|
144
145
|
- `soul` 只影响语气,不影响计划和代码行为
|
|
146
|
+
- 可用的 `soul` 示例包括 `professional`、`playful`、`anime`、`pirate`、`caveman`、`ceo`
|
|
145
147
|
- 支持 planner、coder、reviewer、tester 多角色 sub-agent
|
|
146
148
|
|
|
147
149
|
### 快速开始
|
package/package.json
CHANGED
|
@@ -4,41 +4,16 @@ description: Lightweight brainstorming skill for 30B-class models. Use when a fe
|
|
|
4
4
|
version: 0.1.0
|
|
5
5
|
---
|
|
6
6
|
|
|
7
|
-
Use this skill only
|
|
7
|
+
Use this skill only when the task needs clarification or option comparison before coding.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
- ask one
|
|
11
|
-
-
|
|
12
|
-
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
Do not dump a long questionnaire. Pick the most important uncertainty and resolve it first.
|
|
18
|
-
|
|
19
|
-
1a. If a key uncertainty remains, stop after one question.
|
|
20
|
-
Do not ask multiple numbered questions in the same reply. Do not continue into options, decisions, code, or file edits until that question is answered.
|
|
21
|
-
|
|
22
|
-
2. Stay concrete.
|
|
23
|
-
Focus only on the uncertainty that blocks execution.
|
|
24
|
-
|
|
25
|
-
3. Offer 2-3 approaches only when the key constraint is already clear.
|
|
26
|
-
Keep each option short and focused on the main tradeoff.
|
|
27
|
-
|
|
28
|
-
4. Keep the design small.
|
|
29
|
-
Do not expand a simple task into a long design discussion.
|
|
30
|
-
|
|
31
|
-
5. Confirm before implementation.
|
|
32
|
-
If options were given, wait for the user to choose unless the user explicitly asks for a recommendation.
|
|
33
|
-
|
|
34
|
-
6. No code before convergence.
|
|
35
|
-
Do not write implementation code, pseudo-code, or file edits while the direction is still being chosen.
|
|
36
|
-
|
|
37
|
-
7. Do not decide for the user when the request is still under-specified.
|
|
38
|
-
If the user has not provided enough information to choose confidently, ask the next best question and wait.
|
|
39
|
-
|
|
40
|
-
8. Do not inspect the repo unless existing project context is directly relevant.
|
|
41
|
-
For greenfield brainstorming, stay in conversation mode first.
|
|
9
|
+
Core rules:
|
|
10
|
+
- ask one question at a time
|
|
11
|
+
- if a key uncertainty remains, ask the next best question and stop
|
|
12
|
+
- give 2-3 short options only when the blocking constraint is already clear
|
|
13
|
+
- keep options concrete and focused on the main tradeoff
|
|
14
|
+
- present any conclusion as a suggested decision, not a final choice for the user
|
|
15
|
+
- stop at the decision point unless the user clearly asks to continue
|
|
16
|
+
- do not write code, pseudo-code, file edits, or broad repo exploration while direction is still being chosen
|
|
42
17
|
|
|
43
18
|
Output format:
|
|
44
19
|
|
|
@@ -67,20 +42,9 @@ Option 3 (optional):
|
|
|
67
42
|
- pros:
|
|
68
43
|
- cons:
|
|
69
44
|
|
|
70
|
-
|
|
71
|
-
-
|
|
45
|
+
Suggested decision:
|
|
46
|
+
- recommended:
|
|
72
47
|
- reason:
|
|
73
48
|
|
|
74
|
-
After decision:
|
|
75
|
-
- stop after the
|
|
76
|
-
|
|
77
|
-
Suggested flow:
|
|
78
|
-
- Restate the task briefly
|
|
79
|
-
- Choose one mode only: Question or Options
|
|
80
|
-
- Stop at a clear decision point
|
|
81
|
-
|
|
82
|
-
Avoid:
|
|
83
|
-
- large ceremonies
|
|
84
|
-
- repeating the full conversation
|
|
85
|
-
- asking multiple independent questions in one turn
|
|
86
|
-
- proposing implementation details before the problem is clear
|
|
49
|
+
After suggested decision:
|
|
50
|
+
- stop after the recommended direction unless the user clearly asks to continue into implementation
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: superpowers-lite
|
|
3
|
-
description: Concise workflow skill tuned for 30B-class models:
|
|
3
|
+
description: Concise workflow skill tuned for 30B-class models: prefer structured code tools first, keep context tight, use sub-agents for narrow tasks, and verify before claiming success.
|
|
4
4
|
version: 0.1.0
|
|
5
5
|
---
|
|
6
6
|
|
|
@@ -33,10 +33,17 @@ Routing:
|
|
|
33
33
|
- ask one high-value question before coding
|
|
34
34
|
- do not assume features, storage model, or scope unless the user already gave them
|
|
35
35
|
|
|
36
|
+
Tool order:
|
|
37
|
+
- prefer `locate` first for repo search and candidate discovery
|
|
38
|
+
- use `open_target` to inspect the smallest useful code block with edit metadata
|
|
39
|
+
- use `edit_target` for minimal validated edits
|
|
40
|
+
- use `search_code`, `read_block`, and `read_symbol_context` when lower-level structured context is needed
|
|
41
|
+
- use shell search such as `rg` only as a fallback when structured tools are not enough
|
|
42
|
+
|
|
36
43
|
Core rules:
|
|
37
44
|
|
|
38
45
|
1. Search first.
|
|
39
|
-
|
|
46
|
+
Prefer structured search before broad file reads. Start with `locate`, then inspect with `open_target`, and only fall back to shell search such as `rg` when the structured tools are not enough.
|
|
40
47
|
|
|
41
48
|
2. Keep context tight.
|
|
42
49
|
Do not carry full conversation history into every step. Summarize, narrow scope, and work from the most recent relevant evidence.
|
|
@@ -55,18 +62,18 @@ If the requested behavior, scope, or acceptance is unclear, do not jump into imp
|
|
|
55
62
|
- clear enough to build -> proceed
|
|
56
63
|
|
|
57
64
|
5. Read and write with intent.
|
|
58
|
-
Use `read_file`
|
|
65
|
+
Use `open_target`, `read_block`, and `read_symbol_context` before `read_file` when possible. Use `edit_target` for focused edits. Use `write_file` only for full-file writes. Avoid unnecessary tool calls and avoid rereading the same file without a reason.
|
|
59
66
|
|
|
60
67
|
6. Verify before claiming success.
|
|
61
68
|
Run the relevant test, check, or command before saying work is fixed or complete.
|
|
62
69
|
|
|
63
70
|
Default workflow:
|
|
64
|
-
- Search with `
|
|
65
|
-
- Inspect local context
|
|
71
|
+
- Search with `locate`
|
|
72
|
+
- Inspect local context with `open_target`
|
|
66
73
|
- If the request is unclear, first decide: ask one question, brainstorm, or proceed
|
|
67
74
|
- Plan the next smallest step
|
|
68
75
|
- Delegate if the work is independent
|
|
69
|
-
- Edit
|
|
76
|
+
- Edit with `edit_target`
|
|
70
77
|
- Verify
|
|
71
78
|
- Summarize briefly
|
|
72
79
|
|
package/souls/caveman.md
ADDED
package/souls/ceo.md
ADDED
package/souls/pirate.md
ADDED
package/src/cli.js
CHANGED
|
@@ -4,7 +4,7 @@ import { handleConfig } from './commands/config.js';
|
|
|
4
4
|
import { handleDoctor } from './commands/doctor.js';
|
|
5
5
|
import { handleSkill } from './commands/skill.js';
|
|
6
6
|
|
|
7
|
-
const VERSION = '0.1.
|
|
7
|
+
const VERSION = '0.1.17';
|
|
8
8
|
|
|
9
9
|
function printHelp() {
|
|
10
10
|
console.log(`codemini ${VERSION}
|
package/src/core/chat-runtime.js
CHANGED
|
@@ -2545,7 +2545,7 @@ export async function createChatRuntime({
|
|
|
2545
2545
|
'Explicit brainstorm mode:',
|
|
2546
2546
|
'- Ask exactly one clarifying question first if any important uncertainty remains.',
|
|
2547
2547
|
'- Do not inspect the repo or generate code unless the user explicitly asks for that.',
|
|
2548
|
-
'-
|
|
2548
|
+
'- If you recommend an option, present it as a suggested decision rather than a final choice for the user.',
|
|
2549
2549
|
parsedInput.args.length > 0 ? `Current question:\n${parsedInput.args.join(' ')}` : ''
|
|
2550
2550
|
]
|
|
2551
2551
|
.filter(Boolean)
|
|
@@ -16,13 +16,13 @@ function suggestionForToken(token, config) {
|
|
|
16
16
|
const shell = String(config?.shell?.default || '').toLowerCase();
|
|
17
17
|
if (token === 'find' || token === 'grep') {
|
|
18
18
|
return shell === 'powershell'
|
|
19
|
-
? '
|
|
20
|
-
: '
|
|
19
|
+
? 'Prefer structured tools like locate and open_target first. If you need shell fallback, use allowed search and context commands such as Get-ChildItem, Select-String, Get-Content, or rg when available.'
|
|
20
|
+
: 'Prefer structured tools like locate and open_target first. If you need shell fallback, use allowed search and context commands such as rg, find, grep, sed, cat, or ls.';
|
|
21
21
|
}
|
|
22
22
|
if (shell === 'powershell') {
|
|
23
|
-
return '
|
|
23
|
+
return 'Prefer structured tools like locate, open_target, and edit_target first. If you need shell fallback, use allowed shell commands for search and local context such as Get-ChildItem, Get-Content, Select-String, or rg when available.';
|
|
24
24
|
}
|
|
25
|
-
return '
|
|
25
|
+
return 'Prefer structured tools like locate, open_target, and edit_target first. If you need shell fallback, use allowed shell commands for search and local context such as rg, find, grep, sed, cat, or ls.';
|
|
26
26
|
}
|
|
27
27
|
|
|
28
28
|
export function evaluateCommandPolicy(command, config, workspaceRoot = process.cwd()) {
|