From career
Incremental sync of working-folder/ into a Pinecone index for semantic recall. Embeds only changed files (mtime + content hash). Index name from config. Delegates first-time MCP setup to private-misc:personal-context-injection. Idempotent.
npx claudepluginhub danielrosehill/claude-code-plugins --plugin careerThis skill is limited to using the following tools:
Embeds the workspace into Pinecone so `semantic-recall` can pull in relevant context for downstream skills (recommendation, meeting-prep, ground-truth deltas). Skips files that haven't changed since the last sync.
Guides Next.js Cache Components and Partial Prerendering (PPR): 'use cache' directives, cacheLife(), cacheTag(), revalidateTag() for caching, invalidation, static/dynamic optimization. Auto-activates on cacheComponents: true.
Guides building MCP servers enabling LLMs to interact with external services via tools. Covers best practices, TypeScript/Node (MCP SDK), Python (FastMCP).
Share bugs, ideas, or general feedback.
Embeds the workspace into Pinecone so semantic-recall can pull in relevant context for downstream skills (recommendation, meeting-prep, ground-truth deltas). Skips files that haven't changed since the last sync.
$ARGUMENTS:
--full — re-embed everything (rare; use after schema or model change).--dry-run — list what would be re-embedded, no writes.private-misc plugin installed (provides Pinecone MCP wiring). If missing, bail with: "install private-misc first via /career:onboard companions".PINECONE_INDEX, CONTEXT_STORE=pinecone.WORKING_FOLDER.${WORKING_FOLDER}/.pinecone-sync.json — manifest of {path, sha256, mtime, vector-id}. Create if missing.PINECONE_INDEX from config.Include:
ground-truth.mdcrm/*.mddomain-notes/*.mdrecommendations/*.mdresearch-briefs/*.mdplans/*.mdmeetings/*.mdinbox/*.md (only status: routed entries — drafts churn too fast)Exclude: cache/, _salvage/, .pinecone-sync.json, hidden files.
For each file: compute sha256. If hash differs from manifest (or file is new), mark for re-embed. If --full, mark all.
Mark deletions (in manifest, not on disk) for vector deletion.
Chunking strategy:
## headers; keep heading + body as a single chunk; chunks > 2000 tokens further split on paragraph.<path>#<chunk-index> (stable across runs).path, section, mtime, type (where type ∈ ground-truth | crm | domain-note | recommendation | brief | plan | meeting | inbox).If --dry-run: print the chunk plan and stop.
Use Pinecone MCP upsert-records (namespace = workspace name) with the chunks. Delete vectors for files removed since last sync.
Rewrite .pinecone-sync.json with new {path, sha256, mtime, vector-ids} per file.
synced: <N> files, <M> chunks
unchanged: <U> files
deleted: <D> vectors
index: <PINECONE_INDEX>
manifest: .pinecone-sync.json
inbox/* entries that are still pending-route — they're noisy and short-lived.--full re-embeds everything; warn the user about cost before running.create-index-for-model, then proceed.