Generate a paste-ready Markdown standup post from your recent git commits, narrated by whatever LLM you've configured via fledge ai use. Works on a single repo, a list of repos, an entire dev directory, or every repo on GitHub you've touched.
Rewritten in Rust (v0.3.0+). The previous bash version needed python3 (date math) and jq (JSON parsing) at runtime; the Rust version handles both in-process. git is always required; gh is required for --gh.
$ fledge standup --gh --since "1 week ago"
## Yesterday
- Prepared v0.15.3 release including FLEDGE_PLUGIN_DIR support and plugin.toml as a version source (fledge)
- Re-absorbed templates-remote and doctor plugins back into core (fledge)
- Built standup and roast plugins from scratch (fledge-plugin-standup, fledge-plugin-roast)
- Hand-authored 33 spec stubs and tightened entitlements (Mono)
## Today
- (inferred) Cut v0.15.3 and watch the post-release formula PR land
fledge plugins install CorvidLabs/fledge-plugin-standupfledge plugins install auto-detects Cargo.toml and runs cargo build --release for you — only a Rust toolchain is required at install time.
Make sure an AI provider is configured:
fledge ai use # interactive picker
# or
fledge ai use ollama gpt-oss:120b-cloudfledge standup # last 24h, everyone in the repo
fledge standup --me # just your commits (matches by email)
fledge standup --since "1 week ago" --me
fledge standup --author "Leif" # someone else--me matches by git config user.email first (stable across squash-merges), falling back to user.name.
# Explicit list
fledge standup --repos ~/dev/foo,~/dev/bar,~/dev/fledge --me --since "1 week ago"
# Auto-discover one level deep
fledge standup --repo-dir ~/Development --me --since "1 week ago"Output groups commits under ## <repo-name> headers. The LLM annotates each "Yesterday" bullet with the repo it belongs to: - Bumped tokei to library mode (fledge-plugin-metrics).
# Every commit you pushed anywhere on GitHub (requires `gh auth`)
fledge standup --gh --since "1 week ago"
# A specific GitHub user (e.g. you on a different machine, a teammate)
fledge standup --gh --gh-user 0xLeif --since yesterday--gh shells out to gh search commits so it doesn't need local clones. Sees only commits you pushed to GitHub-visible repos. Requires gh (the JSON parsing and date math that used to need jq/python3 are now built in). Only commits visible to your authenticated user count, so this won't surface private-repo work you don't have access to.
fledge standup --raw # plain aggregated log, skip the LLM
fledge standup --include-diff # adds shortstat per commit (single-repo only)
fledge standup --show-prompt # debug — prints what would be sentfledge standup --me -- --provider ollama --model qwen3-coder:480b-cloudAnything after -- is forwarded to fledge ask.
A single Rust binary that:
- Resolves the active mode (single /
--repos/--repo-dir/--gh) and aggregates commits into a single log with## <repo>headers when multi-repo. Each commit line carries itsYYYY-MM-DDdate so the model can split today vs. earlier. - Builds a structured prompt with two required sections (
## Yesterday,## Today) - Hands it off to
fledge ask --no-spec-index "<prompt>"so it inherits your provider, model, timeouts, and rate-limit config
The model is told to:
- Put past-tense bullets for commits dated before today under "Yesterday" (stripping
feat:/fix:prefixes) - Put past-tense bullets for commits dated today under "Today"
- If there were no commits today, fall back to 1–3 inferred next-step bullets prefixed with
(inferred) - Annotate multi-repo bullets with the repo name in parentheses
--ghis bounded to 200 commits per call (thegh search commits--limitcap). For long windows, narrow with--gh-useror--since.--include-diffis single-repo only. Multi-repo diff stats would blow the token budget.- Output quality scales with model — cloud models produce cleaner narration than local ones.
- Two standups for the same window produce structurally identical but stylistically different prose. That's fine.
MIT