Fix #2 (kilde-så-draft) slice 1: the deterministic STORE half of the lived-specifics bank — the operator's real, un-generatable raw material (measured number / named-but-real case / what broke / contrarian opinion / mind-change), so drafts start grounded instead of hollow (retning §3; dream-spec "Lived-Specifics Extraction", the single biggest missing upstream piece for the authenticity thesis). scripts/specifics-bank/ (sibling to contract-gate, same tsx convention): - src/types.ts — Specific/Bank schema (schemaVersion 1), un-generatable taxonomy - src/bank.ts — pure store: normalizeContent, content-hash id (= dedupe key), load/save, addSpecific (dedupe + topicTag union on re-capture), queryByTopic (active-only, ranked by tag overlap then recency) - src/cli.ts — query / add / list; default bank under ${LINKEDIN_STUDIO_DATA:-~/.claude/linkedin-studio}/specifics-bank/ so it survives plugin upgrades/reinstalls (M0 data-path seam) - tests/bank.test.ts — 15/15 green; tsc clean - README + .gitignore for node_modules/build Content is stored verbatim; never AI-generated. The elicitation interview (refuses vague answers; abstrakt/ekstern escape hatches) lands in slice 3 (/linkedin:newsletter Step 1.5). Forward-compatible with the profile-evolution / "second brain" architecture. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
78 lines
1.7 KiB
Text
78 lines
1.7 KiB
Text
# Secrets and sensitive files
|
|
.mcp.json
|
|
.env
|
|
.env.*
|
|
|
|
# Local configuration
|
|
*.local.md
|
|
# Real voice profile is personal data — adopters keep theirs local; the tracked
|
|
# authentic-voice-samples.md ships as a sentinel placeholder. (Already matched by
|
|
# *.local.md above; listed explicitly so the intent is unmissable.)
|
|
assets/voice-samples/authentic-voice-samples.local.md
|
|
|
|
# Session state (personal activity, auto-initialized from template)
|
|
REMEMBER.md
|
|
|
|
# Credentials
|
|
credentials.json
|
|
*-secret*
|
|
*.pem
|
|
*.key
|
|
|
|
# OS files
|
|
.DS_Store
|
|
Thumbs.db
|
|
|
|
# IDE
|
|
.idea/
|
|
.vscode/
|
|
*.swp
|
|
*.swo
|
|
|
|
# Temporary files
|
|
*.tmp
|
|
*.bak
|
|
|
|
# Draft content (personal posts)
|
|
assets/drafts/queue.json
|
|
assets/drafts/week-*/
|
|
|
|
# Analytics data (personal performance data)
|
|
assets/analytics/exports/
|
|
assets/analytics/posts/
|
|
assets/analytics/weekly-reports/
|
|
assets/analytics/content-history.md
|
|
|
|
# Internal development files (not for public release)
|
|
BACKLOG.md
|
|
docs/DEVELOPMENT-LOG.md
|
|
|
|
# Generated annotation/review artifacts (regenerable; annotations live in browser localStorage)
|
|
docs/review/
|
|
docs/**/*.html
|
|
# Voyage executor bookmarks (local continuity, not tracked)
|
|
docs/**/.session-state.local.json
|
|
*.local.json
|
|
|
|
# Node.js
|
|
scripts/analytics/node_modules/
|
|
scripts/analytics/build/
|
|
scripts/contract-gate/node_modules/
|
|
scripts/contract-gate/build/
|
|
scripts/specifics-bank/node_modules/
|
|
scripts/specifics-bank/build/
|
|
|
|
# --- session/local state ---
|
|
# STATE.md is LOCAL-ONLY (gitignored): no private remote exists and STATE must
|
|
# never reach the public open/ mirror. Deliberate deviation from the global
|
|
# "STATE tracked" rule, justified by the absence of any private remote.
|
|
STATE.md
|
|
REMEMBER.md
|
|
ROADMAP.md
|
|
TODO.md
|
|
NEXT-SESSION-PROMPT*.local.md
|
|
*.local.md
|
|
*.local.json
|
|
*.local.sh
|
|
.DS_Store
|
|
.claude/
|