agentleFS
Slava-codeSlava-code/slava-stack/CLAUDE.md

slava-stack

CLAUDE.md0 starsChanged 29 days agoMITView on GitHub

A closed-loop, AI-native knowledge base for running a startup: research, decisions, brainstorms, experiments, competitor analyses, customer and advisor conversations, strategy, GTM, fundraising, cash flow. Git-backed and shared by the whole team across machines, so everything an agent needs is in the repo, not in machine-local memory. Read CONVENTIONS.md (rulebook) and AGENT-GUIDE.md (where things go) before the first write of a session; do not guess a convention. Skills do the filing: /add-entry, /meeting, /add-todo, /complete-todo, /finance; /kb lists them all. One…

The file

We split this CLAUDE.md into the rules it gives an agent

2 rules. About 0 are common, 1 is distinctive, and 1 is very specific to this project.

  • ≈0

    Common · estimate

    Many files like this have a rule of this kind.

  • ≈1

    Distinctive · estimate

    This author's own choices. Worth a look.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    If the KB has it, the KB wins.

    line 18
  2. Very specific:

    STATE.md matches reality: If what you filed changes an outcome, a status, a number or a price, update the line and its as-of: date in the …

    line 28

≈ “Common” is an estimate: at least 1 in 5 of the 26,980 CLAUDE.md files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
CLAUDE.md

project-kb — agent entry

A closed-loop, AI-native knowledge base for running a startup: research, decisions, brainstorms, experiments, competitor analyses, customer and advisor conversations, strategy, GTM, fundraising, cash flow. Git-backed and shared by the whole team across machines, so everything an agent needs is in the repo, not in machine-local memory.

What is always in your context

  • This file, and the two files it imports below: STATE.md (what is true about the project right now) and ALIASES.md (shorthand → canonical name → file to open).
  • .claude/rules/kb-retrieval.md (which file wins, inference discipline) and .claude/rules/drafting.md (anything the team will send or publish). .claude/rules/kb-writes.md and .claude/rules/research-framing.md load when you read content files.
  • Hook output (.claude/settings.json): at session start, a staleness report and, if present, the gitignored SOUL.md (chat tone only; it never changes how documents are written). On each prompt, the KB files that match it. Treat that list as "open these first", not as the answer.

@STATE.md

@ALIASES.md

Answering

  1. Questions about us, a person, a company, a program, or "what did we do": the answer is in the KB. Start from STATE.md and ALIASES.md, open the files they and the prompt hook point to, and only then answer. First-person phrases ("our pilot", "what we built", "the meeting last week") are KB queries even though nothing is named.
  2. If the KB has it, the KB wins; the web extends it, never replaces it. If the KB is silent, say so and ask.
  3. Comparing anything to your product: ground our side first. See AGENT-GUIDE.md § "Comparison protocol".
  4. Drafting anything outbound: .claude/rules/drafting.md; /write-as if the optional voice plugin (plugins/voice/) is installed.

Writing

Read CONVENTIONS.md (rulebook) and AGENT-GUIDE.md (where things go) before the first write of a session; do not guess a convention. Skills do the filing: /add-entry, /meeting, /add-todo, /complete-todo, /finance; /kb lists them all. One writer at a time (runs/.lock; browser-tool sessions count as writes). Git hooks lint every commit and push it.

Two things every write must leave true:

  • STATE.md matches reality. If what you filed changes an outcome, a status, a number or a price, update the line and its as-of: date in the same session.
  • Old files say they are old. A new version back-stamps the one it replaces; a closed thread gets an outcome banner on the files that still read as open.

Optional active-user preferences: if SOUL.md declares an active user (e.g. Active user: founder-template), read team/<slug>/preferences.md and apply it to the main agent's writes. Subagents don't load it.

Map

NeedWhere
Folder purposes and one-line listingsINDEX.md, then <folder>/INDEX.md (auto-generated; superseded entries are tagged)
VocabularyGLOSSARY.md
Hubs (current truth per entity)discovery/<firm>/README.md, competitions/<program>/README.md, advisors/<person>/README.md
Scope boundaries, human quickstart, reading pathsLIMITS.md, USER-MANUAL.md, READING-GUIDES.md
Gitignored, on disk onlyteam/<slug>/private/ (grep -r finds it; the lookup script skips it unless KB_LOOKUP_INCLUDE_PRIVATE=1)

History of "when did we X": git log --follow <file>.

Download now (ZIP)

Does it work?

Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.

No reviews yet

People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.

  • It worked
  • Partly
  • It didn't
What did you use it for? e.g. Reviewing pull requests in a Rails app

Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.

Your trail

Files you open will collect here, so you can find them again.

Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.

Now do this for your own.

Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.