Agent-neutral self-improvement loop (Claude Code / Codex): log correction moments, auto-apply rules on recurrence, grow skills and guarded scripts, mine session transcripts
Server has 10 tools with complete input schemas and descriptions. Naming is domain-specific but inconsistent in verb usage (log, pending, apply_rule vs search, stats). Descriptions are detailed (100-300 chars) and explain state changes, but lack actionable error guidance. Parameters are well-typed with enums where appropriate (category, outcome). Output schemas are partially documented in code but not formally exposed. Error handling exists but does not guide recovery. Korean enum values reduce LLM clarity.
Auto-apply a recurrence-prevention rule: writes one line into the managed block of the narrowest AGENTS.md/CLAUDE.md covering the records, registers it, and resolves the records. Call only after confirming the records share the same lesson.
Discard a mined candidate that is not a reusable lesson.
Report how an auto artifact performed: success (worked as intended) or correction (user pointed out a problem; fix the artifact too). Scripts get trusted after repeated successes; artifacts retire after repeated corrections without success.
Save a self-improvement record (a moment the result missed what the user wanted). Returns `ripe` when the same lesson has now recurred enough times to auto-apply a rule, and `recurrence_of_resolved` when a previously fixed lesson came back.
Call once at session start. Returns ripe clusters (apply_rule), escalations (fixed lessons that recurred), mined candidates (log or dismiss), and retire suggestions. Process AFTER finishing the user's current request.
Korean enum values (오해, 지식 부족, 도구 실패, 환경 문제, 반복 비효율) reduce LLM clarity and force translation reasoning. Use English enums with Korean descriptions.
No output schemas documented. Tools return complex nested objects (ripe, recurrence_of_resolved, artifacts) but LLMs cannot see expected fields. Document return types formally.
Error messages lack recovery guidance. Validation errors (e.g. 'lesson too long') do not suggest next steps. Add actionable error responses per pattern:recovery-guide.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 66 | 2026-07-28+ | v2 |
Register a skill (<storage>/skills/<name>/SKILL.md, synced to every agent) or a guarded script (<storage>/scripts/<name>) you just created for a repeated lesson; resolves the records.
Mark records resolved by a fix you applied manually. If artifact_id refers to a rule, the server verifies the rule line really exists in its file.
Undo an auto artifact on user request ("규칙 R-003 빼", "그 스킬 빼"): removes the rule line / skill / script, retires it, and marks its records rejected so it will not be re-applied.
Search self-improvement records by keyword/category/project/status.
Aggregate records (category/month/project), recurrence rate, artifact counts, pending candidates.
Naming inconsistency: 'log' is a noun (should be 'create_record' or 'log_record'), 'pending' is an adjective (should be 'list_pending' or 'get_pending_items'). Verb_noun convention improves LLM parsing.
Parameter 'query' in revoke tool lacks description. Unclear whether it matches rule text, artifact name, or both. Add explicit matching rules.