Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 6 additions & 5 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ This file is for implementation operators. See `skills/webster-lp-audit/SKILL.md

Two active workstreams:

- **Production Webster** — Nicolette's weekly landing-page improvement council runs on `main` via `prompts/second-wbs-session.md`. This is live for her business; do not break it.
- **Production Webster** — Nicolette's weekly landing-page improvement council runs on `main`. Operator surface: `/webster-weekly-council` (skill at `skills/webster-weekly-council/SKILL.md`) or the single-page runbook at `prompts/second-wbs-session.md`. Both produce identical artifacts; the prompt is the locked source-of-truth runbook. This is live for her business; do not break it.
- **Hackathon expansion** — Single-substrate Richer Health LP demo with a simulation runner producing timelapse assets. Deadline **2026-04-28**. Working branch: `dev/`. See `context/VISION.md` for canonical north-star.

## First actions every session
Expand Down Expand Up @@ -126,12 +126,13 @@ Use `TaskCreate` / `TaskUpdate` for multi-step work within a single session. Tas

## Skill invocation (Claude Code)

Webster ships two runtime-critic skills:
Webster ships these skills:

- `skills/webster-lp-audit/SKILL.md` — shared council run flow (referenced by production critics)
- `skills/webster-onboarding/SKILL.md` — end-user onboarding flow (universal, demo placeholder)
- `skills/webster-weekly-council/SKILL.md` — operator surface for the weekly run. Library skill: SKILL.md index + on-demand phase references + helper scripts. Slash-command form: `/webster-weekly-council`. Equivalent single-page runbook at `prompts/second-wbs-session.md`.
- `skills/webster-lp-audit/SKILL.md` — shared council run discipline (referenced by production critics)
- `skills/webster-browser-audit/SKILL.md` — headless browser audit for visual review

If your work modifies either skill, test with a sample invocation before committing.
If your work modifies any skill, test with a sample invocation before committing. The weekly-council skill must stay artifact-equivalent with `prompts/second-wbs-session.md` — when in doubt, fix the skill, never the prompt.

## Parallel stream etiquette

Expand Down
19 changes: 14 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ bun scripts/critic-genealogy.ts --fixtures scripts/__tests__/fixtures/genealogy

**30-second pitch:** Webster is an autonomous landing-page improvement council. Nine Claude Managed Agents plan, audit, monitor, synthesize, and package one weekly redesign proposal; the standout demo is Critic Genealogy, where Opus 4.7 detects an unowned audit gap and registers a new specialist at runtime.

**Live-run evidence:** the full operator path is [`prompts/second-wbs-session.md`](prompts/second-wbs-session.md), registration IDs live in `environments/webster-council-env.id` and `context/*/id.txt`, and run artifacts are written under `history/<week>/` when the weekly prompt is executed.
**Live-run evidence:** the operator surface is the [`/webster-weekly-council`](skills/webster-weekly-council/SKILL.md) skill (library: SKILL.md index + on-demand phase references + helper scripts); the full single-page runbook lives at [`prompts/second-wbs-session.md`](prompts/second-wbs-session.md). Registration IDs live in `environments/webster-council-env.id` and `context/*/id.txt`. Run artifacts are written under `history/<week>/` when the weekly run executes.

**Demo arc artifacts:** the hackathon timelapse animates an 11-week simulation council run. Per-week deliverables live under [`demo-output/landing-page/`](demo-output/landing-page/) (`w00..w10`): desktop/mobile/tablet screenshots, heatmap JSON+SVG, synthetic analytics, and the visual reviewer's markdown verdict. Anthropic Managed Agents memory-store provisioning is captured at [`assets/memory-stores-screenshots/`](assets/memory-stores-screenshots/). The rendered timelapse is hosted externally (link in the submission form); reproduce locally with `bun skills/webster-video/scripts/hydrate-demo-assets.ts && cd video && npx hyperframes render -q high --strict`.

Expand All @@ -96,17 +96,18 @@ webster/
│ └── simulation/ 9 LP-sim specs (1:1 mirror) that drive the timelapse demo
├── context/ architecture, features, quality gates, per-critic findings dirs
├── environments/ webster-council-env.json (single Anthropic environment)
├── prompts/ first-wbs-session.md (bootstrap), second-wbs-session.md (weekly run)
├── prompts/ first-wbs-session.md (bootstrap), second-wbs-session.md (weekly run runbook)
├── scripts/ validate-agents, validate-findings, critic-genealogy
├── skills/ webster-lp-audit (shared critic discipline), webster-onboarding
├── skills/ webster-weekly-council (operator surface for the weekly run),
│ webster-lp-audit (shared critic discipline)
├── .github/workflows/ CI: type + lint + format + schema + findings + markdown + tests
├── .husky/ pre-commit runs the same gates locally
└── AGENTS.md operator guide for in-repo work
```

## The weekly flow

The live council runner is a bash-in-markdown prompt: [`prompts/second-wbs-session.md`](prompts/second-wbs-session.md). It:
The live council runner is a Claude Code library skill: [`/webster-weekly-council`](skills/webster-weekly-council/SKILL.md) — slim SKILL.md index, on-demand phase references under `references/`, and reusable helper scripts under `scripts/`. The single-page bash-in-markdown runbook at [`prompts/second-wbs-session.md`](prompts/second-wbs-session.md) is the same flow as a scrollable readable page. Both produce identical artifacts. The flow:

1. Seeds 10 weeks of mock analytics on first run (monitor needs baselines to diff).
2. Prepares a shared `council/YYYY-MM-DD` branch.
Expand Down Expand Up @@ -169,11 +170,19 @@ Registers the single environment + 9 production agents against the Anthropic API

### Weekly council run

In Claude Code (primary):

```text
/webster-weekly-council
```

Or as a single-page prompt (fallback):

```bash
wbs @prompts/second-wbs-session.md
```

Runs the full planner + fan-out + redesigner + draft PR described above.
Both run the full planner + fan-out + redesigner + draft PR described above. The skill loads phase references on demand (smaller per-turn context budget); the prompt is one readable file.

### Spawn a genealogy critic manually

Expand Down
21 changes: 11 additions & 10 deletions context/ARCHITECTURE.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

> Mirrors [[webster-architecture]] in vault. Canonical source is this file for in-repo operators; vault file for cross-session memory.
>
> **Submission state**: Layers 1–4 + Layer 7 shipped. Layer 5 (`site/` fork + analytics pixel + `scripts/seed-mock-history.ts`) is scoped out for submission — the mock seeder is inlined in `prompts/second-wbs-session.md` Step 1 instead of a separate script, and the redesigner emits `proposal.md` instead of `proposal.diff`. Layer 6 (video) is blocked on Richie's voice record. See `context/FEATURES.md` for per-row status.
> **Submission state**: Layers 1–4 + Layer 7 shipped. Layer 5 (`site/` fork + analytics pixel + `scripts/seed-mock-history.ts`) is scoped out for submission — the mock seeder is in phase 1 of the weekly-council skill (`skills/webster-weekly-council/references/seed-history.md`) and equivalently in `prompts/second-wbs-session.md` Step 1, and the redesigner emits `proposal.md` instead of `proposal.diff`. Layer 6 (video) is blocked on Richie's voice record. See `context/FEATURES.md` for per-row status.

## System Overview

Expand Down Expand Up @@ -48,8 +48,9 @@

### Layer 1: Routine + Orchestrator

- `routines/weekly-lp-improve.yaml` — cut from submission; weekly trigger is manual `wbs @prompts/second-wbs-session.md`
- `prompts/second-wbs-session.md` — bash-in-markdown orchestrator (replaces the planned `webster/orchestrator.ts`), reads state, fans out, runs genealogy, opens PR
- `routines/weekly-lp-improve.yaml` — cut from submission; weekly trigger is manual `/webster-weekly-council` (Claude Code skill) or `wbs @prompts/second-wbs-session.md` (single-page runbook)
- `skills/webster-weekly-council/SKILL.md` — library skill: slim index + on-demand phase references + helper scripts; the operator surface for the weekly run
- `prompts/second-wbs-session.md` — bash-in-markdown orchestrator (replaces the planned `webster/orchestrator.ts`), reads state, fans out, runs genealogy, opens PR; the immutable single-page runbook the skill mirrors
- Shared agent skill `skills/webster-lp-audit/SKILL.md` — universal e2e flow: _read context → critique → write findings → exit_
- Per-critic context: `context/critics/{name}/findings.md`
- Run artifacts: `history/YYYY-MM-DD/{analytics.json, council-output/, synthesis.md, proposal.md, decision.json}`
Expand All @@ -67,13 +68,13 @@ Environment `environments/webster-council-env.json`:

Agent specs (JSON, not YAML — matches `POST /v1/agents` schema):

- `agents/webster-monitor.json` — Haiku 4.5
- `agents/brand-voice-critic.json` — Sonnet 4.6
- `agents/fh-compliance-critic.json` — Sonnet 4.6
- `agents/seo-critic.json` — Sonnet 4.6
- `agents/conversion-critic.json` — Sonnet 4.6
- `agents/copy-critic.json` — Sonnet 4.6
- `agents/webster-redesigner.json` — Opus 4.7
- `agents/production/webster-monitor.json` — Haiku 4.5
- `agents/production/brand-voice-critic.json` — Sonnet 4.6
- `agents/production/fh-compliance-critic.json` — Sonnet 4.6
- `agents/production/seo-critic.json` — Sonnet 4.6
- `agents/production/conversion-critic.json` — Sonnet 4.6
- `agents/production/copy-critic.json` — Sonnet 4.6
- `agents/production/webster-redesigner.json` — Opus 4.7

Each spec has: `name`, `model`, `system` (multi-line string with escaped \n), `tools: [{type: agent_toolset_20260401}]`, `metadata`. **No `callable_agents`** (research preview).

Expand Down
Loading