Skip to content
Agentmart
Submit a tool

jobhunt

Track job applications, analyze positions, identify skill gaps, and plan your job search strategy

Skill by sciknow-io

IndexedMIT★ 2
Write a review

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/sciknow-io-jobhunt

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.

We use your email only for this newsletter. Privacy

About

Track job applications, analyze positions, identify skill gaps, and plan your job search strategy

No 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. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/jobhunt

What's inside

Skill name
jobhunt
Description
Track job applications, analyze positions, identify skill gaps, and plan your job search strategy
License
MIT
Instructions
983 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts
  • Instructions call the network

Agent Skills spec issues

  • body: 983 lines (spec recommends under 500)

Files (52)

  • plugin.json · .claude-plugin/
  • .python-version
  • SKILL.md
  • candidates-table.tsx · dashboard/components/
  • embedding-map.tsx · dashboard/components/
  • learning-plan.tsx · dashboard/components/
  • opportunities-board.tsx · dashboard/components/
  • opportunity-list.tsx · dashboard/components/
  • pipeline-board.tsx · dashboard/components/
  • schema-inspector.tsx · dashboard/components/
  • skills-matrix.tsx · dashboard/components/
  • stats-overview.tsx · dashboard/components/
  • lib.ts · dashboard/
  • page.tsx · dashboard/pages/jobhunt/collection/[id]/
  • page.tsx · dashboard/pages/jobhunt/opportunity/[id]/
  • page.tsx · dashboard/pages/jobhunt/
  • page.tsx · dashboard/pages/jobhunt/position/[id]/
  • layout.tsx · dashboard/pages/
  • route.ts · dashboard/routes/candidates/action/
  • route.ts · dashboard/routes/candidates/
  • route.ts · dashboard/routes/collection/[id]/
  • route.ts · dashboard/routes/embedding-map/
  • route.ts · dashboard/routes/fit/
  • route.ts · dashboard/routes/gaps/
  • route.ts · dashboard/routes/learning/
  • route.ts · dashboard/routes/notes/[id]/
  • route.ts · dashboard/routes/opportunities/
  • route.ts · dashboard/routes/opportunity/[id]/
  • route.ts · dashboard/routes/opportunity/update/
  • route.ts · dashboard/routes/pipeline/
  • route.ts · dashboard/routes/position/[id]/
  • route.ts · dashboard/routes/seekers/
  • route.ts · dashboard/routes/skills/
  • route.ts · dashboard/routes/status/
  • validate_views.py · dashboard/
  • collection.yaml · dashboard/views/
  • company.yaml · dashboard/views/
  • contact.yaml · dashboard/views/
  • hub.yaml · dashboard/views/
  • opportunity.yaml · dashboard/views/
  • position.yaml · dashboard/views/
  • embedding_map.py
  • hooks.json · hooks/
  • job_forager.py
  • jobhunt.py
  • pyproject.toml
  • quality-checks.yaml
  • schema-diagram.svg
  • schema.tql
  • skill.yaml
  • SKILL.md · skills/jobhunt/
  • uv.lock

SKILL.md (first lines)

# Job Hunting Notebook Skill

Use this skill to manage a job search as a knowledge graph. Claude acts as the career agent — browsing job boards, evaluating postings against the seeker's profile, and building structured understanding of positions, companies, and fit over time.

**Key principle:** The agent does the sensemaking. Scripts are tools that search APIs, store data, and run queries. The agent decides what's relevant, writes the rationale, and manages the pipeline.

**Role model:** The job seeker is a BFO/UFO *role* that inheres in a person. One person can have multiple roles (job seeker, author, evaluator). The role holds search-specific data; the person holds identity data.

---

## 1. Quick Start

### Prerequisites

- TypeDB must be running: `make db-start`
- Dependencies installed: `uv sync --all-extras` (from project root)
- Schema loaded: run `make build-db` after `make build-skills`

> **Path note:** Replace `.claude/skills/jobhunt` below with your installation directory:
> - **Claude plugin install:** `${CLAUDE_PLUGIN_ROOT}/skills/jobhunt` (self-contained bundle at `plugins/jobhunt/`)
> - **skillful-alhazen project:** `.claude/skills/jobhunt`
>
> When installed as a plugin, TypeDB starts automatically on session start (no manual init required).

### Environment Variables

- `TYPEDB_HOST`: TypeDB server (default: localhost)
- `TYPEDB_PORT`: TypeDB port (default: 1729)
- `TYPEDB_DATABASE`: Database name (default: alhazen_notebook)

### Essential Commands

```bash
# Ingest a job posting from URL
uv run python .claude/skills/jobhunt/jobhunt.py ingest-job \
    --url "https://boards.greenhouse.io/anthropic/jobs/123456" \
    --priority high

# List your pipeline
uv run python .claude/skills/jobhunt/jobhunt.py list-pipeline

# Show position details
uv run python .claude/skills/jobhunt/jobhunt.py show-position --id "position-abc123"

# Add a note to any entity
uv run python .claude/skills/jobhunt/jobhunt.py add-note \
    --about "position-abc123" --type research \
    --content "Strong AI safety focus, good culture fit"
```

### Command Output Pattern

`uv run` emits a `VIRTUAL_ENV` warning to stderr. Always use `2>/dev/null` when piping output to a JSON parser -- never `2>&1`, which merges the warning into stdout and breaks JSON parsing.

---

## 2. Job Seeker Profile

The job seeker is modeled as a **role** (BFO/UFO pattern) that inheres in a person. The role holds search-specific data (target role, industries, salary expectations) while the person entity holds identity data (name, email, linkedin).

### Create a Seeker Profile

```bash
uv run python .claude/skills/jobhunt/jobhunt.py create-seeker-profile \
    --person op-f25ab4b15b0f \
    --target-role "Principal AI Architect" \
    --industries "AI, Biotech, Scientific Computing" \
    --salary "200k-250k" \
    --location "Remote / SF Bay Area" \
    --focus "TypeDB-powered knowledge systems, AI for science"
```

This creates a `jhunt-job-seeker-role` entity linked to the person via `alh-role-bearing`. All pipeline data (opportunities, skills, candidates) scopes to this role.

### Build the Skill Profile

Skills are owned by the seeker role, derived from real evidence, and use a simplified Bloom's taxonomy for proficiency levels.

**Proficiency levels:**
| Level | Meaning | Evidence type | Interview readiness |
|-------|---------|---------------|-------------------|
| `expert` | Can design/teach | Publications, architected systems, led teams | Can whiteboard, critique alternatives |
| `practiced` | Hands-on experience | Projects, production use, coursework | Can walk through how you used it |
| `aware` | Conceptual knowledge | Read papers/docs, attended talks | Can answer "what is X" questions |
| `none` | Not known | No evidence | Cannot discuss |

#### Step 1: Ingest Profile Artifacts

The agent ingests the seeker's professional artifacts as sources of evidence. Each artifact is stored and linked to the seeker via `alh-aboutness` so skills can trace back to their proof.

```bash
# Ingest LinkedIn profile (save page HTML or use Playwright MCP to capture)
uv run python .claude/skills/jobhunt/jobhunt.py ingest-job \
    --url "https://linkedin.com/in/username"

# Ingest resume (PDF or text)
# Upload or paste resume content, agent stores as jhunt-resume artifact

# Ingest ORCID profile
# Agent fetches via WebFetch and stores key publications/experience

# Ingest Google Scholar page
# Agent fetches and extracts publication list, h-index, citation metrics
```

The agent should fetch each source, extract the content, and store it as an artifact linked to the seeker role via `alh-aboutness`. This creates the evidence chain: artifact → seeker → skill.

#### Step 2: Sensemaking Interview

The agent reads the ingested artifacts and conducts a structured interview with the seeker:
- "Tell me about your TypeDB experience — what have you built?"
- "How deep is your AWS knowledge — have you architected solutions or followed tutorials?"
- "What's your biomedical ontology experience — which ones have you used?"

For each skill identified, the agent assesses the proficiency level based on the evidence and discussion.

#### Step 3: Create Skills with Evidence

```bash

From sciknow-io/alhazen-skill-examples, MIT.

Signals

Stars
2
Forks
1
Open issues
25
Last commit (this folder)
Jun 23, 2026 (4 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from sciknow-io

Cite this page

jobhunt skill. Agent Mart. https://agentmart.dev/skills/sciknow-io-jobhunt (last updated 2026-10-24)