defend-my-project
Skill5 starsChanged 9 days agoMITView on GitHub
Interviewers always grill candidates on their resume projects ("why MongoDB?", "what happens at 10k users?", "what was the hardest bug?"). This skill reads the candidate's actual project code (current repo or a GitHub URL), finds every decision an interviewer would attack, then cross-examines them one question at a time and writes a defense sheet of prepared answers. Use when the user wants to prepare to explain or defend their project, be grilled on their GitHub repo, prepare for "walk me through your project", or practise project-based interview questions.
In this repository20 other files it gives its agents.
- AGENTS.mdAGENTS.md
- website/AGENTS.mdAGENTS.md
- company-intelSkill
- cracked-profileSkill
- setup-crackedSkill
- core-vivaSkill
- hr-roundSkill
- mock-interviewSkill
- oa-simSkill
- pattern-coachSkill
- system-design-mockSkill
- github-glowupSkill
- jd-matchSkill
- make-it-hireableSkill
- referral-dmSkill
- resume-blueprintSkill
- roast-my-resumeSkill
- offer-decodeSkill
- prep-planSkill
- rejection-reviewSkill
The file
We split this skill into the rules it gives an agent
10 rules. About 0 are common, 6 are distinctive, and 4 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
4
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Very specific: line 12
Call the Skill tool with "cracked-profile".
- Very specific: line 14
If the user gave a GitHub URL, clone it into a temp directory with full history (old commits matter for leaked secrets): git clone <url> …
- Distinctive: line 16
Ask one question: "Did you build this alone or in a team?
- Distinctive: line 20
Verify before you accuse: Every claim you'll quote back must have evidence:
- Very specific: line 53
Ask one question at a time.
- Distinctive: line 54
Follow up at least once on every vague answer: "Why?", "How do you know?", "What would you measure?"
- Distinctive: line 55
When they say something that contradicts the code, gently show them the code: interviewers catch this, and it's the worst look.
- Very specific: line 70
Call the Skill tool with "cracked-profile" and log a scorecard titled with the repo name.
- Distinctive: line 74
Every question must be grounded in the real code.
- Distinctive: line 75
Never edit their repo in this skill.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Defend my project
"Walk me through your project" is in nearly every interview, and it's where many candidates fall apart: they built it, but can't explain why it's built that way. You read their real code, then interview them the way a sharp engineer would.
0. Setup
- Call the Skill tool with "cracked-profile".
- Find the project:
- If the user gave a GitHub URL, clone it into a temp directory with full history (old commits matter for leaked secrets):
git clone <url> "$(mktemp -d)/repo". If it's very large,git clone --filter=blob:limit=1mand say so. - Otherwise, use the current working directory. If it's not a project (no source files), ask which repo.
- If the user gave a GitHub URL, clone it into a temp directory with full history (old commits matter for leaked secrets):
- Ask one question: "Did you build this alone or in a team? Which parts were yours?" Only grill them on code they own.
1. Recon (silent; don't interview yet)
Verify before you accuse. Every claim you'll quote back must have evidence:
- Tests and build: find the project's test and build commands (
package.jsonscripts,Makefile,pytest.ini,go test ./...). Tell the candidate you're about to run them, and run them read-only. Never install dependencies or run install scripts from an unfamiliar repo without asking, because they can execute arbitrary code; if running isn't safe, read instead and say so. Base every testing question on the result ("npm testisn't defined", "pytest: 3 failed"), not on a guess. - Secrets: scan tracked files (
git grep -nIE '(api[_-]?key|secret|password|token)\s*[:=]|AKIA[0-9A-Z]{16}|sk-[A-Za-z0-9]{20,}|-----BEGIN [A-Z ]*PRIVATE KEY') and history (git log -p -S'SECRET' --all | head -200, repeated forKEY,TOKEN,PASSWORD). A real leaked secret becomes question #1, with a rotate it now and purge it from history warning (same rule asgithub-glowup). - Size: above ~200 tracked files, don't read everything. Sample entry points, routes and handlers, models and schemas, config, and the most-changed files (
git log --format= --name-only | sort | uniq -c | sort -rn | head -20), and tell the candidate you sampled.
Then read the project like an interviewer prepping for the round. Look at the README, dependency manifests, entry points, folder structure, data models/schemas, API routes, auth, config/env handling, tests, CI, deploy files, and the git log (git log --oneline | head -50, and git shortlog -sn for team projects).
Build an attack list of 12–20 questions across these categories, each grounded in a specific file or line:
| Category | Example |
| Pitch | "Explain this project in 30 seconds to a non-engineer." |
| Tech choices | "You used MongoDB, but your data in models/order.js is relational with joins via populate. Why not Postgres?" |
| Architecture | "Walk me through what happens from clicking 'Pay' to the DB write." |
| Data and schema | "What indexes does the users collection have? What query is slowest?" |
| Security | "Your JWT secret is read in config.js. Where is it stored? What happens if a token is stolen?" |
| Scale | "This endpoint loads all posts with no pagination (routes/posts.js:22). What happens at 100k posts?" |
| Failure modes | "What if the payment webhook arrives twice?" |
| Testing | "How do you know this works? I see no tests for cart.ts." |
| Hardest part | "What was the hardest bug? How did you find it?" |
| Ownership | "If you rebuilt this today, what would you change?" |
| Gotchas found in code | Real weaknesses you spotted: an N+1 query, hardcoded secrets, a race condition, missing validation |
Order them from easy to hard. Mark the 3–5 most dangerous: questions that expose real flaws in the code.
Save the attack list, with the file:line evidence for each question, to $CRACKED_DIR/defense/.hidden/<repo-name>-attack-list.md. It lets a later session resume where this one stopped, and becomes the skeleton of the defense sheet. Tell the candidate it's there and not to open it until the session is over.
2. Cross-examination
Tell the candidate: "I've read your code. I'm going to interview you about it like a senior engineer would. Answer as if you're in the room."
- Open with a code-grounded walkthrough, never a generic pitch. For example: "Walk me through what happens, file by file, when a client calls
POST /orders", naming the real route and file. Save the 30-second pitch for later in the session. - Ask one question at a time. Quote the file and line when it adds pressure ("In
server/auth.js:41you…"). - Follow up at least once on every vague answer: "Why?", "How do you know?", "What would you measure?"
- When they say something that contradicts the code, gently show them the code: interviewers catch this, and it's the worst look.
- Short feedback after each answer (one or two lines): solid ✔, shaky 🟡 (and why), or wrong ✘. Save the full teaching for the defense sheet.
- 8–12 questions is a full session. Always include the dangerous ones.
3. Defense sheet
Write $CRACKED_DIR/defense/<repo-name>.md containing:
- 30-second pitch and 2-minute walkthrough, written from the code and their answers, in their voice.
- Architecture sketch: an ASCII diagram of the real request flow.
- Q&A: every question asked, plus the remaining attack-list questions, each with a strong answer grounded in the actual code. Where the honest answer is "that's a weakness", write the answer that owns it well: "I know this endpoint doesn't paginate; at scale I'd add cursor-based pagination, because…"
- Fix before the interview: the 3–5 real code issues worth fixing now, each with file:line and a one-line fix. Offer to fix them, or point to
/make-it-hireable.
4. Scorecard
Call the Skill tool with "cracked-profile" and log a scorecard titled with the repo name. Dimensions: Ownership & Depth, Technical Justification, Honesty About Weaknesses, Communication, Scale Thinking.
Rules
- Every question must be grounded in the real code. Generic project questions are what this skill exists to replace.
- Never edit their repo in this skill.
Skill calls: if your agent has no Skill tool, open the named skill's SKILL.md in the cracked skills folder (core/, interview/, profile/, strategy/) and follow it instead.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

