Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Weekly Status Agent Starter

This repository is the runnable companion to I Built an AI Agent That Remembers What I Did All Week.

The workflow reconstructs one client week from an explicit GitHub and Slack allowlist, normalizes the source events, produces an outcome-based draft, validates every citation, and renders a reviewable Markdown report.

The fixture demo contains no private repositories, Slack messages, client names, or credentials.

Run the fixture demo

npm install
npm run demo

The report is written to runs/latest.md. Open the links in the fixture output to see how every claim preserves its source URL.

Optional OpenAI synthesis

cp .env.example .env
# Set OPENAI_API_KEY
npm run demo:openai

The model receives the bounded evidence pack. Deterministic code still owns the client manifest, date range, source allowlists, identity filters, citation validation, and draft-only state.

Read from GitHub and Slack

Create a manifest based on fixtures/client-manifest.json, then use least-privilege read tokens:

GITHUB_TOKEN=... \
SLACK_BOT_TOKEN=... \
npx tsx src/cli.ts \
  --mode live \
  --provider openai \
  --manifest path/to/client-manifest.json

The starter intentionally collects a narrow first slice. Production implementations should add pull-request reviews, checks, deployments, Slack thread replies, pagination checkpoints, source caching, identity mapping, and provider-specific rate-limit handling.

Safety boundary

  • The model never chooses the client boundary.
  • Events from unlisted repositories and channels are excluded before synthesis.
  • Every claim requires valid evidence IDs.
  • The output is always a draft.
  • There is no email, Slack post, client portal, or send tool.

Architecture

flowchart LR
  MANIFEST["Client + date manifest"] --> COLLECT["Read-only collectors"]
  COLLECT --> EVENTS["Normalized work events"]
  EVENTS --> SYNTH["Bounded synthesis"]
  SYNTH --> CITE["Citation validation"]
  CITE --> DRAFT["Reviewable Markdown draft"]
Loading

Checks

npm run check
npm test
npm run build

License

MIT. See LICENSE.

About

Getting Automated public starter for weekly status agent starter.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages