Good Strategy Bad Strategy
wondelai/skills
Formulate and audit real strategy using Richard Rumelt's "Good Strategy Bad Strategy": an honest diagnosis, a guiding policy, and coherent action instead of goals, vision, and wishful thinking.
Intelligent error diagnosis, automatic recovery strategies, and prevention of recurring failures
$ npx skills add Ckokoski/AuthorAgent --skill error-recovery -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Ckokoski/AuthorAgent error-recovery --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Ckokoski/AuthorAgent.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/core/error-recovery .claude/skills/error-recovery && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "error-recovery" agent skill from https://github.com/Ckokoski/AuthorAgent/tree/main/skills/core/error-recovery into .claude/skills/error-recovery/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "error-recovery", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Ckokoski/AuthorAgent/tree/main/skills/core/error-recoveryType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Ckokoski/AuthorAgent --skill error-recovery -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Ckokoski/AuthorAgent error-recovery --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ckokoski/AuthorAgent.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/core/error-recovery .agents/skills/error-recovery && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "error-recovery" agent skill from https://github.com/Ckokoski/AuthorAgent/tree/main/skills/core/error-recovery into .agents/skills/error-recovery/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "error-recovery", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Ckokoski/AuthorAgent --skill error-recovery -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Ckokoski/AuthorAgent error-recovery --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ckokoski/AuthorAgent.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/core/error-recovery .cursor/skills/error-recovery && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "error-recovery" agent skill from https://github.com/Ckokoski/AuthorAgent/tree/main/skills/core/error-recovery into .cursor/skills/error-recovery/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "error-recovery", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Ckokoski/AuthorAgent.git --path skills/core/error-recovery--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Ckokoski/AuthorAgent --skill error-recovery -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Ckokoski/AuthorAgent error-recovery --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ckokoski/AuthorAgent.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/core/error-recovery .gemini/skills/error-recovery && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "error-recovery" agent skill from https://github.com/Ckokoski/AuthorAgent/tree/main/skills/core/error-recovery into .gemini/skills/error-recovery/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "error-recovery", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Ckokoski/AuthorAgent error-recoveryInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Ckokoski/AuthorAgent --skill error-recovery -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Ckokoski/AuthorAgent.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/core/error-recovery .github/skills/error-recovery && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "error-recovery" agent skill from https://github.com/Ckokoski/AuthorAgent/tree/main/skills/core/error-recovery into .github/skills/error-recovery/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "error-recovery", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Ckokoski/AuthorAgent --skill error-recovery -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Ckokoski/AuthorAgent error-recovery --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Ckokoski/AuthorAgent.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/core/error-recovery .opencode/skills/error-recovery && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "error-recovery" agent skill from https://github.com/Ckokoski/AuthorAgent/tree/main/skills/core/error-recovery into .opencode/skills/error-recovery/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "error-recovery", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
error-recoveryIntelligent error diagnosis, automatic recovery strategies, and prevention of recurring failures
Error Recovery is an agent skill from Ckokoski/AuthorAgent. Intelligent error diagnosis, automatic recovery strategies, and prevention of recurring failures
Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
The repository describes itself as: The Autonomous AI Writing Agent — a secure, author-focused AI for fiction and nonfiction authors (Planning, Revision, Promotion, and more). The licence is MIT.
5 steps, taken from the step headings in SKILL.md.
Read from SKILL.md and the folder at commit 47e9570. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are json).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Error Recovery loads about 1.7k tokens when it runs. Until then it costs about 28 tokens; SKILL.md has 453 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Ckokoski/AuthorAgent at commit 47e9570, republished under its MIT licence (© Ckokoski). 453 words, ~1,653 tokens.
.claude/skills/error-recovery/SKILL.md (or your agent's skills folder).When things go wrong, AuthorAgent doesn't just report the error — it diagnoses the root cause, attempts automatic recovery, and remembers the fix for next time.
Symptoms: API timeouts, rate limits, auth failures, model unavailability
Error Detected: Gemini API returned 429 (rate limited)
Diagnosis: Too many requests in short period (>60/min)
Recovery Strategy:
1. ✅ Wait 30 seconds and retry (attempt 1 of 3)
2. ⏳ Switch to DeepSeek as fallback provider
3. ⏳ If all providers fail, queue the task for later
Lesson Stored: "Gemini rate limits at ~60 req/min.
Add 500ms delay between batch requests."Recovery Playbook:
Symptoms: Step failures, invalid AI output, parsing failures
Error Detected: Goal step "Create character profiles" failed
AI returned unstructured text instead of character profiles
Diagnosis: Prompt was too open-ended for structured output
Recovery Strategy:
1. ✅ Reformulate prompt with explicit structure requirements
2. ✅ Add output format example to prompt
3. ✅ Retry with reformulated prompt
New prompt: "Create character profiles in this exact format:
NAME: [name]
AGE: [age]
ROLE: [protagonist/antagonist/supporting]
..."
Result: ✅ Step succeeded on retryRecovery Playbook:
Symptoms: Write failures, permission denied, path not found
Error Detected: Cannot write to workspace/projects/my-novel/chapter-1.md
Permission denied
Diagnosis: Directory doesn't exist or wrong permissions
Recovery Strategy:
1. ✅ Create directory with mkdir -p
2. ✅ Retry write
3. If still failing → Check sandbox permissions → Alert user
Result: ✅ Created directory and wrote file successfullyRecovery Playbook:
Symptoms: Fetch timeouts, blocked domains, invalid responses
Recovery Playbook:
Symptoms: Context too long, corrupted memory files, missing context
Recovery Playbook:
1. Error detected
2. Classify error (provider/goal/file/network/memory)
3. Look up recovery playbook
4. Check improvement log for past fixes for this error type
5. Execute recovery strategy (up to 3 attempts)
6. If recovered:
→ Log the successful fix
→ Continue with the task
→ Store lesson for future prevention
7. If not recovered:
→ Pause the goal (don't fail silently)
→ Send clear error report to user
→ Suggest manual intervention steps
→ Store the failure for analysisThe real power is preventing errors before they happen:
Pre-flight checks — Before each step, verify:
Pattern recognition — If an error occurred 3+ times:
Graceful degradation — If the best approach fails:
All errors and recoveries are logged to workspace/.audit/error-log.jsonl:
{
"timestamp": "2026-02-24T15:30:00Z",
"category": "provider",
"error": "Gemini API 429 rate limited",
"goalId": "goal-5",
"stepId": "goal-5-step-3",
"recoveryAttempts": [
{ "strategy": "wait_retry", "success": false },
{ "strategy": "switch_provider", "provider": "deepseek", "success": true }
],
"resolved": true,
"lesson": "Rate limit hit during batch execution. Added 500ms delay.",
"preventionRule": "delay_between_gemini_calls_500ms"
}When errors can't be auto-resolved, the user gets a clear report:
⚠️ I hit a problem and couldn't fix it automatically.
What happened: Gemini and DeepSeek both returned errors
while trying to write Chapter 5.
What I tried:
1. Retry with Gemini (3x) — failed (rate limited)
2. Switch to DeepSeek — failed (API key expired)
3. Switch to Ollama — not configured
What you can do:
• Check your DeepSeek API key (may need renewal)
• Wait 5 minutes and say "continue" to retry
• Add an Ollama endpoint as a backup provider
Your goal is paused at step 5/12. No work was lost.diagnose [error] — Analyze a specific errorshow error log — View recent errors and recoverieserror stats — Error frequency and recovery success ratestest recovery — Simulate an error to test recoveryprevention rules — Show active error prevention rules© Ckokoski, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/core/error-recovery of Ckokoski/AuthorAgent.
Open the folder on GitHubat commit 47e9570
Error Recovery next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Error Recovery this skillCkokoski/AuthorAgent | 124 | — | ~1.7k | Automated safety check: Pass | MIT | |
| Good Strategy Bad Strategywondelai/skills | 2.4k | — | ~4.8k | Automated safety check: Pass | MIT | |
| Backup Recoverysickn33/agentic-awesome-skills | 47k | 2 repos | ~3k | Automated safety check: Warn | MIT | |
| Disaster Recoverysickn33/agentic-awesome-skills | 47k | 2 repos | ~3k | Automated safety check: Pass | MIT | |
| Product Strategyphuryn/pm-skills | 27k | — | ~1.2k | Automated safety check: Pass | MIT | |
| Marketing Strategy Pmmalirezarezvani/claude-skills | 28k | 1 repos | ~3.1k | Automated safety check: Pass | MIT |
wondelai/skills
Formulate and audit real strategy using Richard Rumelt's "Good Strategy Bad Strategy": an honest diagnosis, a guiding policy, and coherent action instead of goals, vision, and wishful thinking.
sickn33/agentic-awesome-skills
Implement backup and recovery strategies. An agent skill from sickn33/agentic-awesome-skills.
sickn33/agentic-awesome-skills
Implement disaster recovery strategies and runbooks. An agent skill from sickn33/agentic-awesome-skills.
phuryn/pm-skills
Create a comprehensive product strategy using the 9-section Product Strategy Canvas — vision, segments, costs, value propositions, trade-offs, metrics, growth, capabilities, and defensibility.
alirezarezvani/claude-skills
Product marketing skill for positioning, GTM strategy, competitive intelligence, and product launches.
alirezarezvani/claude-skills
When the user wants to plan a product launch, feature announcement, or release strategy.
Ckokoski/AuthorAgent
Structured post-goal reflection that extracts lessons, evaluates quality, and feeds the self-improvement loop
Ckokoski/AuthorAgent
Find and analyze comparable titles for query letters, marketing, and positioning strategy
Ckokoski/AuthorAgent
Scan manuscript for inconsistencies in characters, timeline, settings, and names
Ckokoski/AuthorAgent
Advanced 47-marker voice analysis engine — analyzes your writing to build a comprehensive Voice Profile for AuthorClaw
Ckokoski/AuthorAgent
Transform raw speech-to-text dictation into polished prose while preserving the author's natural voice
Ckokoski/AuthorAgent
Analyze and rewrite first chapters for maximum reader retention using genre-specific hook patterns
Intelligent error diagnosis, automatic recovery strategies, and prevention of recurring failures. Error Recovery is an agent skill from Ckokoski/AuthorAgent.
Run `npx skills add Ckokoski/AuthorAgent --skill error-recovery -a claude-code`. Or copy the skill folder (skills/core/error-recovery in Ckokoski/AuthorAgent) into .claude/skills/error-recovery in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Ckokoski/AuthorAgent --skill error-recovery -a codex`. Or copy the skill folder (skills/core/error-recovery in Ckokoski/AuthorAgent) into .agents/skills/error-recovery in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Ckokoski/AuthorAgent --skill error-recovery -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/error-recovery, .gemini/skills/error-recovery, .github/skills/error-recovery and .opencode/skills/error-recovery in your project.
SKILL.md names no scripts, command-line tools or credentials: Error Recovery is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Error Recovery is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.7k tokens (SKILL.md is roughly 6.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Error Recovery: Good Strategy Bad Strategy (wondelai/skills, 2.4k stars), Backup Recovery (sickn33/agentic-awesome-skills, 47k stars), Disaster Recovery (sickn33/agentic-awesome-skills, 47k stars) and Product Strategy (phuryn/pm-skills, 27k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Ckokoski (a GitHub user) maintains it in Ckokoski/AuthorAgent, which has 124 GitHub stars. The repository holds 23 skills in this directory. The repository was last updated on July 11, 2026.
Source: Ckokoski/AuthorAgent on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.