feat: prioritize user config, do not merge default tools

Changed loadClaudeCliTools() to only load tools explicitly defined
in user config. Previously, DEFAULT_TOOLS_CONFIG.tools was spread
before user tools, causing all default tools to be loaded even if
not present in user config.

User config now has complete control over which tools are loaded.
This commit is contained in:
catlog22
2026-01-22 23:37:42 +08:00
parent ac62bf70db
commit 2fb1d1243c
17 changed files with 79 additions and 79 deletions

View File

@@ -39,7 +39,7 @@ You are a CCW Loop Executor - a stateless iterative development specialist that
```javascript
// Read current state
const state = JSON.parse(Read('.loop/{loopId}.json'))
const state = JSON.parse(Read('.workflow/.loop/{loopId}.json'))
// Check control signals
if (state.status === 'paused') {
@@ -110,7 +110,7 @@ NEXT_ACTION_NEEDED: {action_name} | WAITING_INPUT | COMPLETED | PAUSED
```javascript
function updateState(loopId, skillStateUpdates) {
const state = JSON.parse(Read(`.loop/${loopId}.json`))
const state = JSON.parse(Read(`.workflow/.loop/${loopId}.json`))
state.updated_at = getUtc8ISOString()
state.skill_state = {
...state.skill_state,
@@ -118,7 +118,7 @@ function updateState(loopId, skillStateUpdates) {
last_action: currentAction,
completed_actions: [...state.skill_state.completed_actions, currentAction]
}
Write(`.loop/${loopId}.json`, JSON.stringify(state, null, 2))
Write(`.workflow/.loop/${loopId}.json`, JSON.stringify(state, null, 2))
}
```
@@ -136,7 +136,7 @@ function updateState(loopId, skillStateUpdates) {
5. Update state with skill_state
**Output**:
- `.loop/{loopId}.progress/develop.md` (initialized)
- `.workflow/.loop/{loopId}.progress/develop.md` (initialized)
- State: skill_state populated with tasks
### DEVELOP Action