[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-76198":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":15,"subscribersCount":15,"size":15,"stars1d":15,"stars7d":15,"stars30d":16,"stars90d":15,"forks30d":15,"starsTrendScore":15,"compositeScore":17,"rankGlobal":10,"rankLanguage":10,"license":18,"archived":19,"fork":19,"defaultBranch":20,"hasWiki":19,"hasPages":19,"topics":21,"createdAt":10,"pushedAt":10,"updatedAt":35,"readmeContent":36,"aiSummary":37,"trendingCount":15,"starSnapshotCount":15,"syncStatus":38,"lastSyncTime":39,"discoverSource":40},76198,"LockedIn","daypunk\u002FLockedIn","daypunk","Lives inside your Claude Code session. Capture work as structured experience, then render resumes, Korean cover letters, interview answers, and project ideas from it.","",null,"Python",140,11,10,0,68,50.04,"MIT License",false,"main",[22,23,24,25,26,27,28,29,30,31,32,33,34],"career","claude-code","claude-code-plugin","cover-letter","harness-engineering","interview","knowledge-graph","korean","markdown","obsidian","ontology","pkm","resume","2026-06-12 04:01:21","# LockedIn\n\n**English** | [한국어](README.ko.md) | [日本語](README.ja.md) | [简体中文](README.zh.md)\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"docs\u002Fassets\u002Flogo.png\" alt=\"LockedIn\" width=\"100%\" \u002F>\n\u003C\u002Fp>\n\nLockedIn lives inside your Claude Code session. While you're coding or writing docs, save the work that matters as structured experience. When you need a resume, a Korean cover letter, an interview answer, or a project idea, LockedIn writes it from that structured experience.\n\n[![Claude Code](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FClaude%20Code-orange.svg?logo=anthropic&logoColor=white)](https:\u002F\u002Fwww.anthropic.com\u002Fclaude-code)\n[![version](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fversion-1.2.1-orange.svg)](https:\u002F\u002Fgithub.com\u002Fdaypunk\u002FLockedIn\u002Freleases)\n[![license](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-orange.svg)](LICENSE)\n[![stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fdaypunk\u002FLockedIn?color=orange&style=flat)](https:\u002F\u002Fgithub.com\u002Fdaypunk\u002FLockedIn\u002Fstargazers)\n\n## Install\n\nInside Claude Code, run three commands.\n\n```\n\u002Fplugin marketplace add daypunk\u002FLockedIn\n\u002Fplugin install lockedin@lockedin\n\u002Flockedin:setup\n```\n\nThe third command runs a one-time wizard. It wires the heads-up display, picks your default interview language, and chooses where to save your experience.\n\n## How you use it\n\nNo commands to memorize, no extra tab to open. Just start naturally inside Claude Code.\n\nTo start fresh, build your experience from zero:\n\n- \"start organizing my experience\"\n- \"interview me about my work history\"\n- \"absorb my resume.pdf\"\n\nWhile you're working, capture moments as they happen:\n\n- \"save this commit as a project highlight\"\n- \"this meeting just wrapped, log it\"\n- \"I just learned how to use X, track it\"\n\nWhen you need to produce something:\n\n- \"make me an English resume\"\n- \"I'm applying to company X for role Y, write the answer to question Z\"\n- \"audit this resume PDF\"\n\nLockedIn asks one question at a time when it needs more from you, and it stops when it has enough.\n\n\u003Cp align=\"center\">\n  \u003Cimg src=\"docs\u002Fassets\u002Farchitecture.png\" alt=\"LockedIn architecture\" width=\"100%\" \u002F>\n\u003C\u002Fp>\n\n## Why it exists\n\nMost tools for organizing experience want you to leave your work, log in somewhere else, and remember everything that mattered. By then, half of it is already gone from your head.\n\nOther tools sit outside your work. LockedIn sits inside it. The moment you merge a line of code, lock in a meeting decision, or settle on a new design choice gets saved as structured experience. The flow doesn't break.\n\nOnce saved, your experience connects to your outputs. Six months later when you need a resume, the six months of real work is right there. Stacked as markdown in your filesystem, not in someone else's database. Carry it to any tool, reuse it for any artifact.\n\n## Features\n\n- **No commands to memorize.** Type the way you'd talk and LockedIn picks the right skill.\n- **Captures while you work.** Save a moment from your Claude Code session as structured experience, no context switch.\n- **Scores your output.** A different Claude than the writer reviews it against a domain-researched rubric.\n- **No API key needed.** Runs on your existing Claude Code subscription.\n\n## How it works\n\n**1. Your experience gets structured.** Drop a resume, answer a few short interview questions, or capture a moment from your current work. LockedIn organizes it into 15 typed markdown files in `~\u002FDocuments\u002FLockedIn\u002F`.\n\n**2. Every claim is bound to a real entity.** The writer turn cites companies, projects, and metrics as `[[type\u002Fslug]]` references pointing at specific vault files. Slugs are swapped for natural language right before you see the output. If no matching entity backs a claim, the slug stays in place and LockedIn asks you whether to add the entity rather than fabricating one. There is no opening for a new fact to slip in.\n\n**3. Two Claudes grade.** Once the writer turn finishes, a separate reviewer turn reads `RUBRIC.md` fresh from disk and scores. Each artifact has its own 5 dimensions (for the English resume: metric density, action verb quality, structure, banned phrases, persona fit). You get a JSON alongside the markdown with per-dimension scores 0–5, a total, cited-entity recall, and any banned-phrase hits. If any dimension lands below 4, LockedIn auto-refines once before you see the result.\n\n**4. Your experience and your conversation stay in sync.** If you edited a markdown file by hand, or said something in chat that conflicts with what's already there, LockedIn notices first and asks one focused question to reconcile. This is possible because your experience is stored as typed entities, not free-form text. The AI compares only the changed fields instead of re-reading everything. Sync cost scales with what changed, not with how large your experience grows. The richer your experience becomes, the more this matters.\n\n## Skills\n\n| Function | Skill | Role |\n|---|---|---|\n| Talk to LockedIn | `\u002Flockedin` | The natural-language entry point. Hears what you ask, routes to the right sub-skill, runs the Q&A interview when your experience is empty, and notices when the conversation and your existing experience have drifted apart. |\n| Capture work moments | `\u002Flockedin-capture` | Converts in-session capture intents (\"save this\", \"log this\", \"track this\") into structured entries. Writer\u002Freviewer pattern scored on 5 dimensions (schema conformance, edge completeness, field specificity, semantic accuracy, duplicate detection). Surfaces candidate duplicates and asks before merging; never silent-merges or silent-creates duplicates. |\n| Write an English resume | `\u002Flockedin-render-resume-en` | Pulls from your experience and writes a resume tuned to a target persona. 10 built-in personas cover senior IC, mid-level, PM, backend, frontend, mobile, data engineer, ML engineer, designer, and marketing roles. Other targets work too; the rubric stays calibrated and only the persona-fit dimension gets more conservative. Scored on 5 dimensions (metric density, action verb quality, structure, banned phrases, persona fit). |\n| Write a Korean cover letter | `\u002Flockedin-render-jaso` | Give it a company and a question; it cites your experience and writes the answer. Reviewed against a five-dimension Korean rubric (lead-with-conclusion, structure, specificity, phrasing, fit) with a cross-source-verified list of banned phrases the draft must avoid. |\n| Draft an interview answer | `\u002Flockedin-render-interview` | Give it the company, the role, and the question; it answers in STAR or PAR shape, one experience per paragraph with explicit transition sentences so an interviewer can follow you. Scored on 5 dimensions (clarity, evidence, persona fit, conciseness, tone). |\n| Surface next project ideas | `\u002Flockedin-render-ideas` | Reads your experience and pitches 3 to 5 directions you could take next, each one a one-paragraph pitch that cites the specific entries making it a fit for you. Scored on 5 dimensions (feasibility, novelty, evidence grounding, scope match, motivation alignment). |\n| Audit any resume | `\u002Flockedin-audit` | Drop a resume PDF or DOCX and get a 5-dimension score. |\n\n## Documentation\n\n| File | Purpose |\n|---|---|\n| [`docs\u002Farchitecture.md`](.\u002Fdocs\u002Farchitecture.md) | How the pieces fit together |\n| [`docs\u002Fontology-spec.md`](.\u002Fdocs\u002Fontology-spec.md) | The frontmatter contract |\n| [`docs\u002Fontology-mapping.md`](.\u002Fdocs\u002Fontology-mapping.md) | Cross-walk to JSON Resume, Schema.org, FOAF |\n| [`docs\u002Forchestration.md`](.\u002Fdocs\u002Forchestration.md) | Render and ingest pipelines |\n| [`docs\u002Fcli.md`](.\u002Fdocs\u002Fcli.md) | Optional power-user CLI |\n| [`docs\u002Fhud.md`](.\u002Fdocs\u002Fhud.md) | Status line integration |\n\n## License\n\nMIT. See [LICENSE](.\u002FLICENSE).\n","LockedIn 是一个集成在Claude Code会话中的工具，用于将你的工作经历以结构化形式保存，并根据这些数据生成简历、韩文求职信、面试答案和项目想法。它采用Python编写，支持自然语言输入，无需记忆特定命令，即可自动识别并执行相应功能。核心特点在于其能够在你工作时实时捕获重要时刻，如代码提交或会议决策等，确保信息的即时性和准确性。此外，该工具还能对输出内容进行评分，帮助用户更好地准备求职材料。适用于需要频繁更新个人职业文档或准备面试资料的技术工作者。",2,"2026-06-11 03:54:46","CREATED_QUERY"]