{
  "markdown": "# Intern 101\n\nA standalone Claude Code plugin for interns and working professionals. Handles the repetitive parts of a work session — session catchup, daily updates, end-of-day wrap-up, project organization, and interactive codebase knowledge graphs.\n\n**Single entry point:** just type `/intern` and describe what you need. No need to remember skill names.\n\n---\n\n## Quick Start\n\n```\n/intern I'm starting work — what was I doing?   → catchup\n/intern done for today                           → wrap-up (git check + extract)\n/intern write my daily update                    → daily-update\n/intern map this codebase                        → visualise\n```\n\nOr invoke skills directly if you prefer.\n\n---\n\n## Skills\n\n### `/intern` — Dispatcher\n\nUnderstands natural language and routes to the right skill. Use this when you're not sure which skill you need.\n\n```\n/intern <anything>\n```\n\nExamples that work:\n- \"where was I last session\" → `/catchup`\n- \"I'm done for today\" → `/wrap-up`\n- \"what did I do this week\" → `/daily-update`\n- \"find sessions about authentication\" → `/recall`\n- \"show me all project statuses\" → `/status`\n- \"build a graph of this repo\" → `/visualise`\n\n---\n\n### Session Management\n\n| Skill | What it does |\n|---|---|\n| `/catchup` | Shows last 5 sessions, asks what to load, delivers a \"where you left off\" summary |\n| `/extract-today` | Finds all new sessions from today not yet saved, confirms, batch-extracts them |\n| `chat-context-extractor` | Extracts a single `.jsonl` session into a structured markdown context doc. Auto-locates the latest session if no path given. Use when you want to extract one specific session rather than today's batch. |\n| `/daily-update` | Reads today's extracted sessions and generates a 5–7 point plain-language update for your supervisor |\n| `/recall <query>` | Searches past session titles and summaries for a keyword, returns matching sessions with snippets |\n| `/status` | Shows all sub-projects' current status, pending items, and next actions in one table |\n| `/wrap-up` | End-of-day: checks git status → prompts to commit if needed → extracts today's sessions |\n\n---\n\n### Project Organization\n\n| Skill | What it does |\n|---|---|\n| `project-index-manager` | Organizes a messy project into named sub-projects, each with `_Index.md` + `_progress.md`. Wires `CLAUDE.md` to load the index every session. Invoke by description: *\"set up project indexes\"* |\n\n---\n\n### Knowledge Graph (`/visualise` suite)\n\n| Skill | What it does |\n|---|---|\n| `/visualise [path]` | Builds an interactive HTML knowledge graph — AST + semantic extraction, Louvain community detection, god-node identification, confidence audit trail (`EXTRACTED` / `INFERRED` / `AMBIGUOUS`) |\n| `/visualise-search <query>` | Finds graph nodes by natural language — no need to know exact names |\n| `/visualise-gaps` | Lists isolated (undocumented/disconnected) nodes; `--draft` auto-generates stub docs for each |\n| `/visualise-history` | Walks git history, snapshots the graph at each commit, generates a time-slider HTML |\n| `/visualise-diff` | Color-coded diff between two snapshots — shows added, removed, and shifted nodes/edges |\n\n---\n\n## Recommended Workflow\n\n```\n# Start of day\n/catchup                         → pick up where you left off\n/status                          → one-page overview of all sub-projects\n\n# During the day\n/recall <topic>                  → find past sessions before starting new work\n/visualise                       → map the codebase architecture\n/visualise-search <query>        → find relevant nodes without knowing exact names\n\n# End of day\n/wrap-up                         → git check + optional commit + session extraction in one flow\n```\n\n---\n\n## Install\n\n### Option 1 — CLI\n\n```bash\nclaude plugin marketplace add Arnav1906/intern-101\n```\n\nRestart Claude Code. All skills available immediately.\n\n### Option 2 — npm\n\n```bash\nnpm install -g intern-101\n```\n\n### Manual\n\nAdd to `~/.claude/settings.json`:\n\n```json\n{\n  \"extraKnownMarketplaces\": {\n    \"intern-101\": {\n      \"source\": { \"source\": \"github\", \"repo\": \"Arnav1906/intern-101\" }\n    }\n  },\n  \"enabledPlugins\": { \"Arnav1906@intern-101\": true }\n}\n```\n\n---\n\n## Requirements\n\n- [Claude Code](https://claude.ai/code)\n- Python 3.8+\n- Windows, macOS, and Linux supported\n\n**For `/visualise` skills only:**\n```bash\npip install networkx==3.3 python-louvain==0.16\n```\n\n---\n\n## End-of-Day Hook (optional)\n\nAdds a passive reminder to extract sessions when you close Claude without using `/wrap-up`. Add to `~/.claude/settings.json`:\n\n```json\n{\n  \"hooks\": {\n    \"Stop\": [\n      { \"command\": \"bash \\\"${CLAUDE_PLUGIN_ROOT}/hooks/stop-extract-prompt.sh\\\"\" }\n    ]\n  }\n}\n```\n\n---\n\n## Architecture\n\n```\nintern-101/\n  skills/\n    intern/              ← dispatcher: routes all natural language to the right skill\n    catchup/\n    chat-context-extractor/  ← single-session extractor (used by extract-today internally)\n    daily-update/\n    extract-today/\n    project-index-manager/\n    recall/\n    status/\n    wrap-up/\n\n  plugins/\n    visualise/\n      skills/            ← visualise, visualise-search, visualise-gaps, visualise-history, visualise-diff\n      assets/            ← HTML templates (graph, diff, history)\n\n  agents/\n    graph-analyst.md     ← orchestrates visualise suite with judgment (full vs incremental, sequencing)\n    session-manager.md   ← orchestrates session skills (catchup + recall + daily-update flows)\n\n  rules/\n    output-format.md     ← daily-update format, context filename convention\n    file-boundaries.md   ← no path traversal, no overwrite protection\n    graph-conventions.md ← visualise-out/ layout, graph.json schema, extract→cluster→render order\n\n  hooks/\n    hooks.json           ← Stop event → stop-extract-prompt.sh\n    stop-extract-prompt.sh\n\n  scripts/\n    lib/\n      utils.py           ← CLAUDE_PLUGIN_ROOT resolution, path helpers, file I/O\n      session.py         ← INDEX.md parsing, session file ops, slugify\n      graph.py           ← graph.json load/save/query\n    catchup.py\n    chat_context_extractor.py\n    daily_update.py\n    extract_today.py\n    project_index_manager.py\n    recall.py\n    status.py\n    wrap_up.py\n    visualise/\n      extract.py         ← AST + semantic extraction → graph.json\n      cluster.py         ← Louvain community detection\n      render.py          ← graph.json + template → graph.html\n      search.py\n      gaps.py\n      diff.py\n      history.py\n```\n\nEach skill is a thin instruction layer — all Python logic lives in `scripts/`. Skills call scripts via `python \"${CLAUDE_PLUGIN_ROOT}/scripts/<name>.py\"`, which makes scripts testable independently and keeps SKILL.md files focused on flow, not implementation.\n\n---\n\n## Author\n\nArnav Bhalla\n",
  "bytes": 6704,
  "sha": "1f7d95613495574a1f1dfca60eab41cdd3e9f5256c4fe3c8fadf0a6a3feef730",
  "repo_slug": "arnav1906/intern-101",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/plg_arnav1906_intern_101_intern_101_a967c828/readme"
}