Replace incomplete clearSkillCaches() with clearCommandsCache() so the
loadAllCommands memoize layer is also busted when a cloud favorite skill is
enabled or disabled via /hub.
Add skillChangeDetector.notify() to trigger an immediate REPL command list
refresh instead of waiting for the file watcher to detect the change.
Signed-off-by: 林凯90331 <90331@sangfor.com>
Co-authored-by: CoStrict <zgsm@sangfor.com.cn>
Clear listFavoriteItems cache after load/unload to ensure UI reflects latest state on next open
Filter defaultValue by Active status in cloud-enabled menu so unloaded items are not pre-selected
Surface specific error reasons instead of generic failure count in cloud-enabled menu
Signed-off-by: 林凯90331 <90331@sangfor.com>
Co-authored-by: CoStrict <zgsm@sangfor.com.cn>
Some terminals on CentOS emit \n or \r\n instead of \r for the Enter key.
Map both sequences to 'return' in parseKeypress so key.return is set correctly.
Replace console.warn with logForDebugging in favorite.ts to prevent
network errors from polluting the TUI output.
Signed-off-by: 林凯90331 <90331@sangfor.com>
Co-authored-by: CoStrict <zgsm@sangfor.com.cn>
Add 30s in-memory cache for favorite item list to reduce API calls
Expand supported MCP server types beyond local/remote to stdio/sse/ws/sdk and more
Change single MCP server conversion to use stdio type with separate command/args/env fields
Reduce page size from 100 to 20 for faster initial load
Switch parallel remote fetching to sequential to avoid rate limiting
Signed-off-by: 林凯90331 <90331@sangfor.com>
Co-authored-by: CoStrict <zgsm@sangfor.com.cn>
Remove embedded files, use Skill tool to load review/security-review
skill instead, matching the same mechanism as /review.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
All review commands now exclusively use extract-to-disk + skill scanner,
no registerBundledSkill duplication.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Remove registerBundledSkill for /review and /security-review since
extract-to-disk + skill scanner already registers them. Only register
/strict:review and /strict:security-review via bundled skill.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Set disableModelInvocation to false so the model can use the Skill tool
to load review/security-review skills as instructed by locale templates.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Remove context:'fork' from strict variants, all four commands now
execute inline in the main session.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Replace indirect Skill-tool-based routing with direct bundled skill
registration using SKILL_FILES, matching /strict:review approach.
- reviewSkills.ts registers all four commands (review, security-review,
strict:review, strict:security-review) with embedded files
- Remove review command from commands.ts (now bundled skill)
- Simplify review.ts to only export ultrareview
- Update mcp.ts to get review command from bundled skills
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Add strictReview.ts to register strict review variants as bundled skills
with context:'fork' (sub-agent mode), using SKILL_FILES and CommandLocale.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Restore files to match the verified commit state:
- generate-review-builtin.ts: skill-only generation, SSH clone, optimize/agent-prompts branch
- extension.ts: listBuiltinSkillNames, getClaudeConfigHomeDir approach
- lang.ts: re-extract review skills on language switch
- locales: use Skill tool prompt format
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Revert PR #43 agent-based code that was brought in during the main merge:
- Remove generateBuiltinAgents and all agent-related logic from generate script
- Delete src/costrict/review/agent/ directory
- Delete src/commands/security-review.ts (handled by bundled skill)
- Restore PR #64 extension.ts with getClaudeConfigHomeDir approach
- Remove REVIEW_AGENTS from builtInAgents.ts
- Keep review command (needed for MCP entry), but use CommandLocale instead of agent
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add 'Skill' to allowedTools so model can invoke Skill tool to load
review/security-review SKILL.md content
- Restore src/costrict/command/locales/ with zh-CN/en templates telling
model to use Skill tool (aligns with opencode PR #360 approach)
- Remove model: 'inherit' from review registration (was resolving to
wrong model, strict:plan works without it)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Merge strict:review/strict:security-review into reviewSkills.ts (single
file registers all four commands: /review, /security-review,
/strict:review, /strict:security-review)
- Remove conflicting prompt commands from src/commands/ (review.ts,
security-review.ts) so bundled skills take precedence
- Remove REVIEW_AGENTS import from builtInAgents.ts and mcp.ts
- Remove agent generation logic from generate-review-builtin.ts
- Configure allowedTools and model: 'inherit' per claudecode spec
- Switch test branch to optimize/agent-prompts
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Replace custom extension.ts initialization and agent-based routing with
csc's built-in registerBundledSkill({ files }) mechanism. Review and
security-review skills are now registered with embedded files that
get lazily extracted to disk on first invocation. Locale is resolved
at startup via getResolvedLanguage().
- Remove agent generation from generate-review-builtin.ts (skill-only)
- Remove extension.ts, REVIEW_AGENTS registration, strict:* skills
- Add reviewSkills.ts with registerReviewSkills() for unified registration
- Adapt to new costrict-review index.json format (skills-only, new paths)
- Remove src/costrict/command/locales/ (no longer needed)
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Files are still present on disk and generated by build:review-builtin.
.gitignore rules prevent them from being re-committed.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- Add generate-review-builtin.ts script (downloads from zgsm-ai/costrict-review)
- Add review module (index.ts, extension.ts) with locale-aware skill init
- Add CommandLocale module with zh-CN/en templates for /review and /security-review
- Integrate REVIEW_AGENTS into builtInAgents.ts
- Route /review command to CoStrictReviewer agent
- Simplify /security-review to use Skill tool with locale templates
- Remove old generate-skills.ts and inline security-review skill
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
CoStrict provider now directly passes the user's configured model name
to the API, instead of replacing it with the first model from the
/ai-gateway/api/v1/models list.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>