Skip to content
Agentmart
Submit a tool

career

Manage your career graph — people, collaborators, projects, and potential new positions — plus the opportunity pipeline, skill gaps, and learning plan

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-career

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

Manage your career graph — people, collaborators, projects, and potential new positions — plus the opportunity pipeline, skill gaps, and learning plan

Use cases: data

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/career

What's inside

Skill name
career
Description
Manage your career graph — people, collaborators, projects, and potential new positions — plus the opportunity pipeline, skill gaps, and learning plan
License
MIT
Instructions
1,123 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts
  • Instructions call the network

Agent Skills spec issues

  • body: 1123 lines (spec recommends under 500)

Files (92)

  • plugin.json · .claude-plugin/
  • .python-version
  • .standalone-db
  • SKILL.md
  • career.py
  • career_forager.py
  • 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/
  • people-table.tsx · dashboard/components/
  • pipeline-board.tsx · dashboard/components/
  • projects-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/career/collection/[id]/
  • page.tsx · dashboard/pages/career/opportunity/[id]/
  • page.tsx · dashboard/pages/career/
  • page.tsx · dashboard/pages/career/person/[id]/
  • page.tsx · dashboard/pages/career/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/people/
  • route.ts · dashboard/routes/person/[id]/
  • route.ts · dashboard/routes/pipeline/
  • route.ts · dashboard/routes/position/[id]/
  • route.ts · dashboard/routes/project/update/
  • route.ts · dashboard/routes/projects/
  • 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/
  • hub.yaml · dashboard/views/
  • opportunity.yaml · dashboard/views/
  • person.yaml · dashboard/views/
  • position.yaml · dashboard/views/
  • project.yaml · dashboard/views/
  • embedding_map.py
  • hooks.json · hooks/
  • README.md · mapping/
  • glav_runner.py · mapping/
  • 01_companies.yaml · mapping/rules/
  • 02_skill_concepts.yaml · mapping/rules/
  • 03_your_skills.yaml · mapping/rules/
  • 04_search_sources.yaml · mapping/rules/
  • …and 32 more

SKILL.md (first lines)

# Career Notebook Skill

Use this skill to manage your career as a knowledge graph — not just a job search. The graph holds **people** (contacts, mentors, sponsors, references), **collaborators** (who works with you on what), **projects** (the bodies of work that build career capital), and **potential new positions**, all layered on top of the opportunity pipeline (position / engagement / venture / lead). Claude acts as the career agent — browsing job boards, evaluating postings against the operator's profile, mapping relationships, and building structured understanding of positions, companies, people, 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.

**Primer principle (see docs/operating-principles.md):** every new opportunity or project gets the operator's messy initial brain dump stored as a primer note (`add-note --type primer`). Never require the operator to pre-structure it — capture first, organize later.

**Role model:** The career agent is a BFO/UFO *role* (`career-agent-role`) that inheres in a person — it is the person's active career role, and job-seeking is just one mode of it. One person can have multiple roles (career agent, author, evaluator). The role holds career-campaign 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/career` below with your installation directory:
> - **Claude plugin install:** `${CLAUDE_PLUGIN_ROOT}/skills/career` (self-contained bundle at `plugins/career/`)
> - **skillful-alhazen project:** `.claude/skills/career`
>
> 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/career/career.py ingest-job \
    --url "https://boards.greenhouse.io/anthropic/jobs/123456" \
    --priority high

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

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

# Add a note to any entity
uv run python .claude/skills/career/career.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. Career Agent Profile

The career agent is modeled as a **role** (`career-agent-role`, BFO/UFO pattern) that inheres in a person — the person's active career role, with job-seeking being one mode of it. The role holds career-campaign 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/career/career.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 `career-agent-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/career/career.py ingest-job \
    --url "https://linkedin.com/in/username"

# Ingest resume (PDF or text)
# Upload or paste resume content, agent stores as career-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

From sciknow-io/alhazen-skill-personal-assistant, MIT.

Signals

Stars
2
Forks
1
Open issues
0
Last commit (this folder)
Jul 9, 2026 (3 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

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