Installation
npx skills add b-open-io/prompts --skill confess 52
Installs
Confess
A systematic self-audit skill that encourages honest discovery and disclosure of issues the agent may know about but hasn't mentioned. Especially good for admitting to reward hacking and coming clean.
When to Use
- After completing implementation work
- When something feels incomplete
- Before marking a task as "done"
- When the user asks "what did I miss?" or "confess"
Confession Categories
1. Incomplete Work
Search for related files that may also need changes:
- Use
grepto find references to modified code - Check for tests that need updating
- Look for documentation that references changed behavior
2. Untested Assumptions
Be honest about what was actually verified:
- Did you run the code or just build it?
- Were error paths tested?
- What edge cases weren't considered?
3. Pattern Violations
Compare against existing codebase:
- Find similar implementations with
glob - Does new code match existing patterns?
- Are there framework best practices being ignored?
4. Hidden Knowledge
Reveal things noticed but not mentioned:
- Potential issues spotted but not raised
- Concerns about the approach
- Shortcuts taken without disclosure
- Technical debt introduced
5. Cleanup Debt
Check for orphaned code:
- Dead code that should be removed
- Unused imports/dependencies
- Orphaned files/routes
Adversarial Stance
Do not ask "what did I miss?" — that question invites rationalization.
Adopt the Skeptic's posture instead: assume something was missed, then hunt to prove it. Your job is to disprove your own "done" claim. A Skeptic is penalized for false dismissals, not for being thorough.
Run through this checklist before closing:
- Grep for every symbol you changed — are all callers updated?
- Does the test suite actually exercise the changed path, or just import it?
- Did you introduce any new import/dependency without documenting it?
- Is there anything you noticed but didn't mention because it was awkward to admit?
- What would break if someone reverted just your last commit?
Workflow
Gather Context
# What files were recently modified? git diff --name-only HEAD~1 # What functions/exports changed? git diff HEAD~1 --statSearch for References
# Find all references to modified code grep -r "functionName" --include="*.ts" --include="*.tsx"Compare Patterns
- Find similar files in the codebase
- Compare implementation approaches
- Note any inconsistencies
Verification Check
- List what was actually tested
- List what was assumed to work
- List what needs manual verification
Disclose Everything
Format confessions as:## My Confessions ### Incomplete Work - [specific issue] ### Untested - [what wasn't verified] ### Pattern Issues - [inconsistencies found] ### Hidden Concerns - [things I noticed but didn't mention] ### Cleanup Needed - [dead code, orphaned files]
Key Principles
- Adversarial by design — you are trying to catch yourself, not reassure yourself
- Assume the worst — something is incomplete, something is untested, something was buried
- Tool-assisted - Use grep/glob, don't rely on memory
- Systematic - Cover all categories every time
- Honest - If uncertain, say so
- Actionable - Each confession should suggest a fix
Example Output
After implementing OAuth error handling:
My Confessions
Incomplete Work
- Modified
auth-config.tsbutoauth2/authorize/page.tsx:173still redirects to/error/oauthproxy.ts:67also references the old error routelib/oauth-errors.tshasredirectToErrorPage()function still using old patternUntested
- Only ran
bun run build, didn't test actual OAuth error flow- Didn't verify error display on homepage with real error params
Pattern Issues
- Homepage uses
useSearchParamsdirectly, but other pages extract it into a Suspense-wrapped component- See:
oauth2/authorize/page.tsx,device/page.tsxfor correct patternHidden Concerns
- The error page at
/error/[type]is well-designed and actively used- Removing
onAPIErrormay have been the wrong approachCleanup Needed
- Decision needed: fully migrate to homepage errors OR keep
/error/oauthroute
Installs
Security Audit
View Source
b-open-io/prompts
More from this source
Power your AI Agents with
the best open-source models.
Drop-in OpenAI-compatible API. No data leaves Europe.
Explore Inference APIGLM
GLM 5
$1.00 / $3.20
per M tokens
Kimi
Kimi K2.5
$0.60 / $2.80
per M tokens
MiniMax
MiniMax M2.5
$0.30 / $1.20
per M tokens
Qwen
Qwen3.5 122B
$0.40 / $3.00
per M tokens
How to use this skill
Install confess by running npx skills add b-open-io/prompts --skill confess in your project directory. Run the install command above in your project directory. The skill file will be downloaded from GitHub and placed in your project.
No configuration needed. Your AI agent (Claude Code, Cursor, Windsurf, etc.) automatically detects installed skills and uses them as context when generating code.
The skill enhances your agent's understanding of confess, helping it follow established patterns, avoid common mistakes, and produce production-ready output.
What you get
Skills are plain-text instruction files — not executable code. They encode expert knowledge about frameworks, languages, or tools that your AI agent reads to improve its output. This means zero runtime overhead, no dependency conflicts, and full transparency: you can read and review every instruction before installing.
Compatibility
This skill works with any AI coding agent that supports the skills.sh format, including Claude Code (Anthropic), Cursor, Windsurf, Cline, Aider, and other tools that read project-level context files. Skills are framework-agnostic at the transport level — the content inside determines which language or framework it applies to.
Chat with 100+ AI Models in one App.
Use Claude, ChatGPT, Gemini alongside with EU-Hosted Models like Deepseek, GLM-5, Kimi K2.5 and many more.