kochab
Kochab, a personalized resume-based job-search assistant that runs a recurring scan and everything downstream of it.
Skill by btmoriarty
Chalk Labs
Need help deploying kochab?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/btmoriarty-kochab
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: data, productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md and code. Checked Nov 2, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 2
codeload.github.com· found in install commanddoc.courtbouillon.org· found in code
Files it touches
~/.claude/skills/kochab
What's inside
- Skill name
kochab- Description
- Kochab, a personalized resume-based job-search assistant that runs a recurring scan and everything downstream of it. Use when the user wants to start or run a job search, shares a resume, or says "set up my job scan," "find roles that fit my resume," or "what should I apply to." Also use to tailor a resume, draft a cover note or application email, build a story bank, make a study plan for a gap ("what should I study," "how do I qualify for [role]"), prep for an interview, track the pipeline ("I applied to," "where does my search stand"), keep the search moving ("should I follow up," "I'm not interested in [role]"), get stage guidance or references, handle offers and negotiation ("I got an offer"), recover from a rejection or withdraw cleanly, adjust the coaching dial, or use the network ("do I know anyone at [employer]"). It drafts materials and tracks the whole search from discovery to offer; the user always sends.
- License
- MIT
- Instructions
- 288 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (22)
- SKILL.md
- VERSION
- profile.example.json · assets/
- resume_builder.py · assets/
- cover_note.md · references/
- gap_analysis.md · references/
- intervention_dial.md · references/
- interview_prep.md · references/
- legitimacy_check.md · references/
- momentum.md · references/
- network.md · references/
- offer.md · references/
- pipeline.md · references/
- process_health.md · references/
- resume_builder_notes.md · references/
- scan_protocol.md · references/
- scheduled_task_template.md · references/
- setup_interview.md · references/
- stage_guidance.md · references/
- story_bank.md · references/
- study_plan.md · references/
- writing_up_a_role.md · references/
SKILL.md (first lines)
# Job Scan
The skill runs in several modes. Detect which one applies before doing anything.
- **Setup mode.** No `Master_Profile.md` in the working folder. Run Step A, then stop and confirm before scheduling anything.
- **Scan mode.** `Master_Profile.md` exists. Run Step B. This is what the scheduled task calls.
- **Draft mode.** She asks for a cover note, an application email, or to build the story bank, for a specific role. Run Step C. See `references/cover_note.md` and `references/story_bank.md`.
- **Plan mode.** She asks what to study, how to qualify for a role, or for a study plan. Run Step D. See `references/study_plan.md`.
- **Interview mode.** She asks to prepare for a specific interview. Run Step E. See `references/interview_prep.md`.
- **Pipeline mode.** She reports an application event ("I applied to," "I heard back from," "I withdrew"), or asks where her search stands or what her next step is. Run Step F. See `references/pipeline.md`.
- **Momentum mode.** She asks whether or when to follow up, for help getting a drafted application sent, what to do after a call, or to pass on a role she is not interested in. Run Step G. See `references/momentum.md`.
- **Stage-guidance mode.** She asks what a stage expects or what comes after it, or for help with references (who to ask, when, how to brief them). Run Step H. See `references/stage_guidance.md`. Prep for a specific interview at any stage stays Interview mode (Step E).
- **Offer mode.** She has an offer, or asks about evaluating or negotiating one. Run Step I. See `references/offer.md`.
- **Process-health mode.** She reports a rejection, wants to withdraw from a live process, or asks how her search is going overall (funnel). Run Step J. See `references/process_health.md`.
- **Intervention dial.** She asks the tool to be more or less hands-on ("dial the coaching up/down," "just hold things and let me ask"). Update the Intervention level in `Master_Profile.md` and confirm. See `references/intervention_dial.md`.
- **Network mode.** She wants to bring in her contacts (LinkedIn export or paste), asks whether she knows anyone at a specific employer she intends to apply to, or wants help reaching out to a contact. Run Step K. See `references/network.md`. Matching is intent-gated to one employer; never run it across the whole scan.
The scan is only as good as its honesty. A padded scan that reports four "strong matches" every day is worse than useless, because the day a real one appears it will not stand out. Most days produce little. Say so.
---
# Step A: Setup (first run only)
## A1. Read the resume
Ask for the resume file if one has not been provided. Read it. Extract, without embellishing:
- Every role: title, employer, dates, what she actually did.
- Education, degrees, field, institution, dates. Note anything incomplete or in progress.
- Certifications, licenses, patents, publications, talks.
- Tools, systems, languages, domains.
Resumes undersell and oversell in predictable places. Ask about anything that looks compressed ("what did that actually involve?") and anything that looks inflated ("were you the one doing that, or were you managing the person doing it?").
## A2. Interview for what the resume cannot say
Work through `references/setup_interview.md`. One question at a time. Do not batch them into a wall of text.
The interview covers: what she wants next, what she is moving away from, location and commute reality, remote tolerance, compensation floor and whether comp or mission ranks higher, hard nos, and how much of a level change she will accept in either direction.
## A3. Capture the honesty guardrails
This is the part people skip, and it is the part that makes the output trustworthy.
Ask directly: **"For each thing on your resume that sounds more impressive than it was, tell me the honest version."**
Concrete prompts that surface real answers:
- Where were you the owner, and where were you adjacent to the owner?
- Which technology do people assume you built, that you actually used or managed?
- Which title overstates the scope, and which understates it?
- Is there a credential people assume you have that you do not?
- Is there anything on here you would be embarrassed to be asked about in detail?
Write each answer as a rule in the profile, in the form *"say X, never say Y."* For example: *"Coordinated the vendor rollout, working closely with the engineering team. Never imply she wrote the integration code."*
Every future draft, resume variant, and cover note obeys these rules. They are not suggestions. If a role's screen requires overclaiming past a guardrail, the correct output is to name the gap, not to blur it.
## A4. Capture voice rules
Ask for words, phrases, and constructions she would never write, plus two or three samples of her own writing if she has them. Record as a Voice section in the profile. If a writing-style skill is available, use it too.
## A5. Write `Master_Profile.md`
Canonical source. Every future document tailors *down* from this file and never rebuilds from scratch. Sections:
`Contact` · `Search priorities` (including the comp-versus-mission ranking, in her words) · `Voice rules` · `Honesty guardrails` · `Intervention level` (how hands-on she wants the tool: light default, standard, or high; see `references/intervention_dial.md`) · `Experience` (reverse chronological, full detail) · `Skills inventory` · `Education` · `Publications / patents / credentials` · `Open items to resolve`
The story bank lives in its own file, `Story_Bank.md` (built in A5b), not in the profile.
## A5b. Seed the story bank
Follow `references/story_bank.md`. Read the resume and pull a draft story stub from every role or bullet that implies a real accomplishment. Then run a short interview that turns three to five of those stubs into full situation-task-action-result stories, capturing the honest framing for each (what she did versus what the team did). Write `Story_Bank.md`.
This is the raw material for cover notes and, later, interview prep. It does not have to be finished at setup; seed a few strong ones and let it grow as she applies. Ask how many she wants to do now, and offer to add more any time.
## A6. Build the target-employer list
Do not guess at this. Research it.
From her profile, derive her target titles and her target sectors. Then search for the organizations that employ people with those titles, in her geography and remote. Group them into **lanes** the way a search naturally divides. Most searches have two or three, for example: the core role in her primary industry; an adjacent application of the same skills in a different sector; and a part-time, contract, or teaching variant.
Write `Target_Employers.md`, organized by lane, with a one-line note on each employer explaining why it is there. Aim for breadth over precision. This is a seed list, not a cage.
Create `Discovered_Employers.md` (empty ledger, same columns as described in Step B) and `Application_Tracker.md` (empty, with the header and the three tables in `references/pipeline.md`: Active, Watching, Closed). Fill the capacity header from her setup answer (Part 3, question 9b); if she has no number in mind, leave it unset rather than guessing.
## A7. Hand off the schedule
Show her `references/scheduled_task_template.md` with her folder path and lanes filled in. Tell her to create a scheduled task with that text as the prompt.
Recommend daily. A daily scan that honestly reports "nothing new" most days is doing its job; a weekly one misses postings that close in five days.
**Do not create the scheduled task yourself unless she asks.** Confirm the profile is right first. A scan running against a wrong profile is worse than no scan.
---
# Step B: The scan (every run)
## B1. Read state before searching. Mandatory.
1. `Application_Tracker.md`. Every role in it, across all three tables (Active, Watching, Closed), is **already known**. A role is a duplicate if the same employer and role family already appear, even when the title wording, posting ID, or location differs. When unsure, it is a duplicate. Duplicates go under "already tracked, skipped," never in fresh finds. Schema in `references/pipeline.md`.
2. `Master_Profile.md`. Canonical content, voice rules, and honesty guardrails.
3. `Target_Employers.md` and `Discovered_Employers.md`. Both are in scope this run.
## B2. Discover, then sweep
Discovery first, because the seed list only finds what she already knew about. Full protocol in `references/scan_protocol.md`. In brief:
- **Role-first.** Her target titles crossed with qualifiers and the current month and year, across LinkedIn, Indeed, Glassdoor, Greenhouse, Lever, Ashby, Built In, and any board specific to her field.
- **Location-first.** Her titles plus her metro, her state, and neighboring metros. This is how local employers surface that no list would have named.
- **Aggregators and portfolio boards.** VC portfolio boards aggregate hundreds of companies at once.
- **Funding and news.** Recently funded organizations hire program and operations staff early. New organizations did not exist when the seed list was written.
Then sweep a **rotating subset** of `Target_Employers.md`. Rotate so coverage broadens across runs. Note which channels you used this run.
Favor postings from the last seven to ten days.
## B3. Score and assess each new roleFrom btmoriarty/kochab, MIT.
More from btmoriarty/kochab
- 0.512score
opportunity-brief
btmoriarty
Research a company and a specific role, then produce an honest brief on whether it is worth pursuing.
SkillCFreshness: C★ 2Claude Code +9 - 0.512score
roadmap-interview
btmoriarty
Run a short product-discovery interview with a user of Kochab to surface what they actually need, then turn it into structured roadmap input.
SkillCFreshness: C★ 2Claude Code +9
Signals
- Stars
- 2
- Forks
- 0
- Open issues
- 0
- Last commit (this folder)
- Sep 9, 2026 (1 month ago)
- Last release
- Jul 14, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/btmoriarty/kochab
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from btmoriarty
- 0.512score
opportunity-brief
btmoriarty
Research a company and a specific role, then produce an honest brief on whether it is worth pursuing.
SkillCFreshness: C★ 2Claude Code +9 - 0.512score
roadmap-interview
btmoriarty
Run a short product-discovery interview with a user of Kochab to surface what they actually need, then turn it into structured roadmap input.
SkillCFreshness: C★ 2Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get kochab running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
kochab skill. Agent Mart. https://agentmart.dev/skills/btmoriarty-kochab (last updated 2026-10-24)