https://github.com/cfregly/claude-activation-loop
Measure a founder cohort through the Relationship-Activation-Retention loop and tie activation to net-new logos.
https://github.com/cfregly/claude-activation-loop
activation claude claude-code developer-relations growth llm startups
Last synced: about 13 hours ago
JSON representation
Measure a founder cohort through the Relationship-Activation-Retention loop and tie activation to net-new logos.
- Host: GitHub
- URL: https://github.com/cfregly/claude-activation-loop
- Owner: cfregly
- License: mit
- Created: 2026-06-13T22:40:33.000Z (10 days ago)
- Default Branch: main
- Last Pushed: 2026-06-13T23:32:15.000Z (10 days ago)
- Last Synced: 2026-06-14T01:15:41.677Z (10 days ago)
- Topics: activation, claude, claude-code, developer-relations, growth, llm, startups
- Language: Python
- Size: 14.6 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE
- Code of conduct: CODE_OF_CONDUCT.md
- Security: SECURITY.md
Awesome Lists containing this project
README
# claude-activation-loop
> **Consolidated into [claude-activation](https://github.com/cfregly/claude-activation).** Capture, measure, and operate now live in one system, the Launch and Scale stages of Anthropic's Founder's Playbook. This repo is archived and read-only.
[](https://github.com/cfregly/claude-activation-loop/actions/workflows/ci.yml)
[](LICENSE)
**Measure the loop.** The Founder-to-Builder Activation Loop as runnable, attributable code. Feed it a founder cohort, get back the activation funnel, time-to-second-build, the leaky-bucket flag, and the product-qualified accounts ready for a named GTM owner.
Most evangelism dies of an attribution problem: you can fill a room, but you can't prove the room turned into Claude logos. This repo is the answer to that problem in code. It scores a cohort the same way every run, names the biggest leak, and hands you the one number worth your name: **qualified PQA handoffs**, with **time-to-second-build** as the leading indicator. It watches the leaky bucket because the hardest growth problems are not the empty top of the funnel, they are the leaks that fast growth widens.
- **Problem it solves:** activation is the number-one growth problem in AI, and the hardest part is proving it. A funnel on a slide is a memo. A funnel you can run is a demo.
- **Run in under 5 minutes:** `python -m activation_loop examples/cohort.json`. Claude (`claude-opus-4-8`) reads the measured funnel and writes the executive brief on every run.
- **Production lesson it encodes:** tie activation to net-new logos. Reach is not a result. A second build is.
## Where this fits
Nine public repos, two operators, one platform. Every stage runs Claude (`claude-opus-4-8`) on every run. A deterministic gate verifies Claude's output before it ships: Claude does the judgment, the gate proves it.
**Founder Kit**, what a founder runs on their own company:
- Diagnose the company: [claude-startup-linter](https://github.com/cfregly/claude-startup-linter)
- Build the product: [claude-prompt-to-production](https://github.com/cfregly/claude-prompt-to-production)
- Harden the agent: [claude-agent-linter](https://github.com/cfregly/claude-agent-linter)
- Sharpen the raise: [claude-pitch-deck-linter](https://github.com/cfregly/claude-pitch-deck-linter)
**Activation System**, what a growth lead runs on a founder cohort to make activation measurable and attributable:
- Capture the events: [claude-activation-instrument](https://github.com/cfregly/claude-activation-instrument)
- **Measure the funnel: [claude-activation-loop](https://github.com/cfregly/claude-activation-loop) (this repo)**
- Operate the loop on a schedule, gated, the capstone: [claude-operator-loop](https://github.com/cfregly/claude-operator-loop)
**Two shared disciplines, under both lines:**
- Quality: [claude-deslop](https://github.com/cfregly/claude-deslop) grades every repo, the deck, the resume, and the profile.
- Cost: [claude-perf-tune](https://github.com/cfregly/claude-perf-tune), the cost-of-intelligence specialist (GPU-inference profiling and tuning).
## Quickstart
```bash
git clone https://github.com/cfregly/claude-activation-loop && cd claude-activation-loop
python -m activation_loop examples/cohort.json # the readout, then Claude's brief
python -m activation_loop examples/cohort.json --json # the raw measured funnel (the data operator-loop consumes)
python -m activation_loop examples/cohort.json --min-activation 0.4 # CI gate
python tests/test_metrics.py # the test suite
```
## Claude writes the brief
The funnel is deterministic. Claude reads it. `claude-opus-4-8` runs on every readout and writes the brief a growth lead circulates: a one-line headline, a read of where the cohort stands, and the single next motion the numbers call for. The model writes prose grounded in the measured numbers it is handed, so the funnel and the `--min-activation` gate stay the deterministic receipt, and the `--json` output operator-loop consumes is the raw funnel. The tool needs `ANTHROPIC_API_KEY`. With no key it stops with a clear error, because the measure stage runs Claude.
```bash
pip install anthropic # required: the brief runs Claude
export ANTHROPIC_API_KEY=sk-ant-... # or put it in .env
python -m activation_loop examples/cohort.json # the readout, then Claude's read under it
```
The brief renders under the deterministic readout:
```
Claude's read (claude-opus-4-8)
Q3 SF founder day: 12 accounts in, 8 activated, 5 reached a second build, 1 handed off.
The biggest leak is first build to second build, where 38 percent drop off and only 5 of 8 return.
next motion: Tighten the 72-hour follow-up on the 8 first-build accounts to pull time-to-second-build down.
```
## The model
Each founder account carries the loop stages it reached and the day it reached them (day 0 is the touchpoint), plus a spend trend:
```json
{"name": "acct_02", "spend_trend": "up",
"reached": {"touchpoint": 0, "signup": 0, "first_call": 1,
"first_build": 3, "second_build": 10, "production": 22}}
```
The stages are the loop: touchpoint, signup, first API call, first working build, second build, weekly active, production, GTM handoff.
## What it computes
The readout is the whole loop, split into activation and retention.
**Activation**
- **The funnel**: count, share of the top, and conversion from the previous stage, for every loop stage.
- **Activation rate**: first working build over signup.
- **Time-to-second-build**: the median, and the best early predictor of who becomes a logo.
- **Biggest drop-off**: the real activation leak, with the selective handoff gate excluded on purpose.
**Retention** (the half the renewal turns on)
- **Second-build retention**: came back to build again, the best early predictor.
- **Engagement retention**: builders who became weekly-active, the leading indicator of paid retention.
- **Expansion to production**: weekly-active builders who reached production, the renewal.
- **Leaky-bucket and engagement-leak flags**: a strong top of funnel with a weak second build, or builders who never return weekly. Acquisition poured into low retention compounds to near zero.
- **Biggest drop-off**: the real activation leak, with the selective handoff gate excluded on purpose.
- **PQAs newly ready to hand off**: accounts in production with a rising spend trend that have not been handed off yet. Sustained usage is the trigger, not a vibe.
- **The number you own**: qualified PQA handoffs, with time-to-second-build as the leading indicator.
## Gate it in CI
```bash
python -m activation_loop cohort.json --min-activation 0.4 || exit 1
```
The same evals-before-vibes discipline you would give an agent's behavior, applied to a program. A cohort below the activation bar fails the build.
## Claude Skill
Packaged as a Claude Skill in [`skills/activation-loop/SKILL.md`](skills/activation-loop/SKILL.md). Install it as a Claude Code plugin with `/plugin marketplace add cfregly/claude-activation-loop` then `/plugin install activation-loop@activation-loop-plugins`, or upload the `skills/activation-loop/` folder in the Claude app under Settings > Skills (see [Anthropic's skills guide](https://github.com/anthropics/skills)). Then say "measure my activation cohort" or "where is my funnel leaking." Claude runs the readout, names the leak, and lists the accounts ready for a GTM handoff.
## Limitations
The readout is only as honest as the cohort you feed it. It measures the loop
you record. It does not collect the events or verify that a build was real. The
thresholds (the leaky-bucket flag, the activation bar) are defaults to argue
with, not laws. Small cohorts move on a single account, so read each rate
alongside its count.
## License
[MIT](LICENSE). All cohort data in `examples/` is fictional.