정보
`memex-wrap` 스킬은 메멕스 저장소에서 마일스톤 단위 작업을 완료한 후 인수인계 과정을 자동화합니다. 이 스킬은 현재 상태와 다음 단계를 반영하도록 핵심 문서(`CONTINUE_HERE.md` 및 `ROADMAP.md`)를 업데이트하고, 적절한 git 태그와 커밋 메시지를 제안합니다. 프로젝트의 진행 경로와 점수판이 완료된 작업과 동기화되도록 하려면 커밋 전에 이 스킬을 사용하세요.
빠른 설치
Claude Code
추천npx skills add pjt222/agent-almanac -a claude-code/plugin add https://github.com/pjt222/agent-almanacgit clone https://github.com/pjt222/agent-almanac.git ~/.claude/skills/memex-wrapClaude Code에서 이 명령을 복사하여 붙여넣어 스킬을 설치하세요
문서
Wrap a Memex Milestone Slice
Close the loop on a finished slice. A slice ships code; the wrap ships the
trail that lets the next session resume without re-deriving where things
stand. Two docs carry that trail — docs/CONTINUE_HERE.md (where we are,
what's next) and docs/ROADMAP.md (the milestone scoreboard) — and the
wrap leaves both consistent with what actually landed. It does not log
observations or run the verification gates itself; it confirms the first was
done (deferring to memex-observe) and hands off to the second (memex-verify).
When to Use
- You just finished a milestone slice in the memex repo (a
- [x]-sized unit of work) and are about to commit and tag it. - You are handing the next slice to a fresh session and need
CONTINUE_HERE.mdto point at the right starting line. CONTINUE_HERE.md§1 orROADMAP.md's scoreboard has drifted behind what actually shipped, and you want to reconcile them before moving on.
Inputs
- Required: The memex repo checked out, with
cwd= repo root (a checkout of github.com/pjt222/memex). All paths below are repo-relative. - Required: A finished slice — code committed or staged, slice known by its milestone + slice letter/number (e.g. "M5 Slice A").
- Required:
docs/CONTINUE_HERE.mdanddocs/ROADMAP.mdpresent and writable. - Optional:
$MEMEX_STORE_PATH/$MEMEX_PG_URL— only needed if Step 3 ends up logging a new observation, and even then the logging itself is delegated tomemex-observe, which owns those prerequisites.
This skill edits docs and proposes git commands. It does not push, tag, or
run the test gate — those belong to commit-changes and memex-verify.
Procedure
Step 1: Update docs/CONTINUE_HERE.md §1 (current state) and §3 (next slice)
Read the file first; both sections are prose with a specific shape you must match, not free-form.
# Orient: the "Last updated" line, §1 Current state, §3 Next milestone
sed -n '1,40p' docs/CONTINUE_HERE.md
awk '/^## 1\./,/^## 2\./' docs/CONTINUE_HERE.md
awk '/^## 3\./,/^## 3a\./' docs/CONTINUE_HERE.md
Then edit (use the Edit tool — keep surrounding prose intact):
Last updated:line near the top — set today's date and a one-line summary of the slice (mirror the existing format: date — what landed + the commit short-SHAs + branch + state).- §1 Current state — move the finished slice from "in progress / next"
into Shipped, following the existing
M_ ... (shortsha, tagvX.Y.Z)cadence. If the slice opened new tech-debt or deferrals, note them where the section already tracks those. - §3 Next milestone — if this slice completed a milestone, advance §3 to
the next milestone (copy the goal / required-pieces / tasks-in-order /
definition-of-done shape from
ROADMAP.md). If the milestone has more slices left, narrow §3's "tasks in order" to the next slice so the fresh session starts on the right line.
Expected: §1 names the just-shipped slice under Shipped with its SHA(s)
and (if a milestone closed) tag; §3 describes the next concrete slice. The
Last updated: line reflects today.
On failure: If the section headers don't match (## 1. / ## 3.), the
doc has been restructured — re-read it top-to-bottom and adapt to its current
headings rather than forcing the old shape. Never fabricate a SHA; if the
commit doesn't exist yet, write (<commit pending>) and fill it after Step 4.
Step 2: Tick the docs/ROADMAP.md scoreboard
The scoreboard encodes completion two ways: a milestone header gains a
✅ (vX.Y.Z) suffix when the milestone is done, and each finished line item
flips - [ ] to - [x]. Read the relevant block first.
# Find the milestone block you're closing items in
awk '/^## M5/,/^## M6/' docs/ROADMAP.md
Then, with the Edit tool:
- Check the items you shipped: turn each finished
- [ ]into- [x]. Leave genuinely-incomplete or deferred items as- [ ](a deferred item often carries a— deferred to MX.Ynote; preserve it). - Mark the header only when the whole milestone is done — append
✅ (vX.Y.Z)to the## MN — ...header, matching shipped milestones above it (e.g.## M4 — MCP ✅ (v0.4.0)). A milestone with any unchecked, non-deferred item is not done — do not flag its header.
Expected: Every item the slice completed reads - [x]; the header shows
✅ (vX.Y.Z) if and only if all of its non-deferred items are checked. The
new version matches the tag you propose in Step 4.
On failure: If you're unsure whether an item is truly done versus
partially done, leave it - [ ] and note the partial state in
CONTINUE_HERE.md §1 instead — an over-optimistic scoreboard is the exact
drift this skill exists to prevent. Match the existing checkbox/version
formatting; don't invent a new style.
Step 3: Confirm any new observation is logged (defer to memex-observe)
A slice that surfaced a bias, a near-miss, or a reusable lesson should have a matching observation in the bias-log. The wrap's job is to confirm that — not to author the entry or restate the logging CLI.
# Quick existence check: does the bias-log already hold this slice's lesson?
sed -n '1,40p' docs/OBSERVATIONS.md
Decide:
- Nothing worth logging? Note that explicitly in
CONTINUE_HERE.md§1 ("no new observations this slice") so the next session knows it was considered, not skipped, and move on. - A lesson is worth logging? Stop and run the
memex-observeskill to add it. That skill owns thememex add --type observation ...command shape (body piped via stdin,--titlerequired) and the prerequisites. Do not restate or inline that command here — invoke the skill.
The observation body shape lives in docs/OBSERVATIONS.md (the
authoritative "Two paths to add an observation" block is lines 10–21). The
current form (example, current as of v0.4.0; parsed by
crates/memex-extract/src/meditate_vipassana.rs) is:
N. **Title.** Body sentence(s). Mitigation: <what to do next time>. Origin: <date> + <context>.
Treat docs/OBSERVATIONS.md lines 10–21 as the source of truth for this
shape — if it has moved on from the v0.4.0 form, follow the file, not this
example.
Expected: Either a recorded decision that there's nothing to log (noted
in §1), or a new observation added via memex-observe with the next entry
number.
On failure: If you can't tell whether a lesson is observation-worthy, err toward logging it — a redundant observation costs little; a lost one costs a re-derivation next session.
Step 4: Propose the git tag and the commit subject
Don't commit or tag here — propose both so the operator (or the
commit-changes skill) can execute them. Use the memex commit convention:
subject = MN Slice X: <summary>.
# Surface what's staged/unstaged so the proposed subject matches reality
git -C . status --short
git -C . diff --stat
Propose:
- Commit subject —
MN Slice X: <imperative summary>(e.g.M5 Slice A: per-file project helper + watcher skeleton). Keep the subject tight; put the why and the doc-trail updates in the body. - Tag — only when this slice closes a milestone. Propose the next
semver tag matching the
✅ (vX.Y.Z)you set in Step 2 (e.g.v0.5.0for M5). A mid-milestone slice gets a commit but no tag — say so explicitly rather than proposing a tag.
Present both as a ready-to-run block for the operator to confirm:
Proposed commit subject: M5 Slice A: per-file project helper + watcher skeleton
Proposed tag: (none — mid-milestone slice; tag at M5 close as v0.5.0)
Expected: A clearly-labeled proposal: one commit subject in
MN Slice X: form, and either a concrete vX.Y.Z tag (milestone close) or
an explicit "no tag this slice" note. Nothing is committed or tagged by this
skill.
On failure: If the milestone number / slice letter is ambiguous, read
ROADMAP.md and CONTINUE_HERE.md §3 to fix the MN and X; never guess
a version — derive it from the scoreboard you just ticked in Step 2.
Validation
-
CONTINUE_HERE.md§1 lists the just-shipped slice under Shipped with its commit SHA(s), andLast updated:reflects today -
CONTINUE_HERE.md§3 points at the next concrete slice (advanced to the next milestone if this slice closed one) - Every
ROADMAP.mditem the slice completed is now- [x]; deferred items remain- [ ]with their deferral notes intact - The
ROADMAP.mdmilestone header carries✅ (vX.Y.Z)iff all its non-deferred items are checked - A new observation was added via
memex-observe, or §1 explicitly records that none was needed - A commit subject in
MN Slice X:form is proposed, plus a concrete tag (milestone close) or an explicit "no tag" note — nothing committed or tagged by this skill
Common Pitfalls
- Flagging a milestone header done while an item is still open. The
✅on the header is an all-items claim. Tick items in Step 2 first, then check the header only if nothing non-deferred remains. - Restating the observation CLI here. Step 3 confirms logging happened;
it delegates the actual
memex addtomemex-observe. Inlining the command duplicates a surface that drifts — reference the skill instead. - Running
memex init. That is the CLI store/db setup command, not part of any wrap or session ritual. Wrapping a slice never callsmemex init. - Inventing a SHA or version. Derive the tag from the scoreboard you just
ticked; derive the SHA from
git logafter the commit exists. Use a(pending)placeholder rather than a fabricated value. - Committing or tagging from this skill. The wrap proposes; execution is
commit-changes' job, and the test/format gate ismemex-verify's. Keep the boundary — don't let the heaviest skill absorb its neighbors. - Hard-asserting a test count as a pass gate. That belongs to
memex-verify, and even there the gate is exit 0 / "test result: ok" — counts (e.g. "~60 at v0.4.0") are informational and grow per milestone. - Forcing the old doc shape after a restructure. If
## 1./## 3.or the scoreboard headings have changed, adapt to the file as it is now; the doc-reading order itself is owned byadapters/session-init.txt.
Related Skills
memex-init— the session-start counterpart: loads the trail this skill writes. Wrap closes the loop that init opens.memex-observe— owns logging a bias-log observation; Step 3 defers to it rather than restating its CLI.memex-verify— runs the test/format/build gate; the wrap proposes the commit, verify confirms the slice is green before it lands.write-continue-here— the general-purpose continuation-file skill; this skill is its memex-specific specialization for §1/§3 and the scoreboard.commit-changes— executes the commit subject and tag that Step 4 proposes.
GitHub 저장소
Frequently asked questions
What is the memex-wrap skill?
memex-wrap is a Claude Skill by pjt222. Skills package instructions and resources that Claude loads on demand, so Claude can perform memex-wrap-related tasks without extra prompting.
How do I install memex-wrap?
Use the install commands on this page: add memex-wrap to Claude Code as a plugin, or clone its repository into your skills directory, then restart Claude so it picks up the skill.
What category does memex-wrap belong to?
memex-wrap is in the Documentation category, tagged ai.
Is memex-wrap free to use?
Yes. memex-wrap is listed on AIMCP and free to install. It runs inside Claude, so no separate service account is required to use the skill itself.
연관 스킬
이 스킬은 Railway의 기능, 작동 방식 또는 특정 문서 URL에 대한 질문에 답하기 위해 최신 Railway 문서를 가져옵니다. 개발자들이 Railway의 공식 소스로부터 정확하고 최신 정보를 직접 받을 수 있도록 보장합니다. 사용자가 Railway의 작동 방식을 묻거나 Railway 문서를 참조할 때 사용하세요.
이 Claude Skill은 n8n의 Code 노드에서 Python 코드를 작성할 때 전문적인 지침을 제공하며, 특히 Python 표준 라이브러리 사용과 n8n의 특수 구문인 `_input`, `_json`, `_node` 작업에 중점을 둡니다. 이는 개발자가 n8n 내에서 Python의 제한 사항을 이해하도록 돕고, 대부분의 워크플로에는 JavaScript 사용을 권장하면서도 특정 데이터 변환 요구사항에 대한 Python 솔루션을 제안합니다.
Archon 스킬은 REST API를 통해 RAG 기반 시맨틱 검색과 프로젝트 관리를 제공합니다. 이 스킬을 사용하여 문서 검색, 계층적 프로젝트/태스크 관리, 문서 업로드 기능을 갖춘 지식 검색을 수행할 수 있습니다. 외부 문서를 검색할 때는 다른 소스를 사용하기 전에 항상 Archon을 최우선으로 활용하세요.
이 Claude Skill은 n8n의 Code 노드에서 JavaScript 코드 작성에 대한 전문적인 지침을 제공합니다. `$input`/`$json` 변수, HTTP 헬퍼, DateTime 처리와 같은 필수적인 n8n 특정 구문을 다루며 일반적인 오류를 해결합니다. Code 노드에서 사용자 정의 JavaScript 처리가 필요한 n8n 워크플로우를 개발할 때 활용하세요.
