agent-ops-git-story
Generate narrative summaries from git history for onboarding, retrospectives, changelogs, and exploration. LLM-enhanced when available, works without LLM too.
Best use case
agent-ops-git-story is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Generate narrative summaries from git history for onboarding, retrospectives, changelogs, and exploration. LLM-enhanced when available, works without LLM too.
Teams using agent-ops-git-story should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/agent-ops-git-story/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How agent-ops-git-story Compares
| Feature / Agent | agent-ops-git-story | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Generate narrative summaries from git history for onboarding, retrospectives, changelogs, and exploration. LLM-enhanced when available, works without LLM too.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
# Git Story Skill
Generate human-readable narratives from git commit history. Useful for:
- **Onboarding** — Help new team members understand project evolution
- **Retrospectives** — Create sprint/milestone summaries
- **Changelogs** — Generate release notes from commits
- **Exploration** — Understand "what happened here?" for any period
## Requirements
- **Git**: Must be installed locally and available on PATH
- **LLM**: Optional — enhanced narratives when available, templated output without
## Data Extraction
**Works with or without `aoc` CLI installed.** Story generation uses raw `git log` commands by default.
### Git Commands (Default)
| Operation | Command |
|---------|---------|
| Recent commits | `git log --oneline -N` |
| Date range | `git log --since="YYYY-MM-DD" --until="YYYY-MM-DD"` |
| By author | `git log --author="name"` |
| Detailed | `git log --stat --since="YYYY-MM-DD"` |
| JSON-like | `git log --format="%H|%an|%ad|%s" --date=short` |
### CLI Integration (when aoc is available)
When `aoc` CLI is detected in `.agent/tools.json`, enhanced commands are available:
| Command | Description |
|---------|-------------|
| `aoc git story` | Generate narrative from commits |
| `aoc git stats` | Quick repository statistics |
| `aoc git info` | Basic repository information |
### Story Command Options (CLI)
```bash
aoc git story [OPTIONS]
Options:
--since DATE Include commits after this date (YYYY-MM-DD)
--until DATE Include commits before this date (YYYY-MM-DD)
--last N Last N commits only
--author NAME Filter by author name or email
--group [date|author|type] Grouping strategy (default: date)
--format [narrative|changelog|bullets|json] Output format
--output FILE Write to file (default: stdout)
--merges Include merge commits
--repo PATH Repository path (default: current directory)
--title TEXT Custom story title
```
### Examples
```bash
# Last 30 days of activity
aoc git story --since 2026-01-01
# Generate changelog format
aoc git story --last 50 --format changelog
# Filter by author, group by type
aoc git story --author "John Doe" --group type
# Export to file
aoc git story --last 100 --output story.md
# Quick stats
aoc git stats
```
## Agent Workflow
When user requests a git story or narrative:
### 1. Gather Requirements
```
What kind of git story do you need?
A) **Recent activity** — Last N days or commits
B) **Release notes** — Changelog format for a version
C) **Sprint retrospective** — Specific date range
D) **Author focus** — Contributions by a specific person
E) **Full history** — Complete project evolution
```
### 2. Extract Data
Run appropriate `aoc git` command based on requirements:
```bash
# For recent activity
aoc git story --last 30 --format json
# For date range (sprint)
aoc git story --since 2026-01-01 --until 2026-01-15 --format json
# For changelog
aoc git story --since <last-release> --format changelog
```
### 3. Enhance with LLM (Optional)
When LLM is available, transform raw data into rich narrative:
**Input (from CLI JSON output):**
```json
{
"title": "Git Story",
"period": "January 1-15, 2026",
"total_commits": 45,
"groups": [...]
}
```
**LLM Prompt:**
```
Transform this git commit data into a human-readable narrative.
Context: {purpose - onboarding/retrospective/changelog}
Audience: {who will read this}
Tone: {technical/casual/formal}
Data:
{json_output}
Create a narrative that:
1. Opens with an overview of the period
2. Highlights major themes/features
3. Groups related changes logically
4. Notes significant contributors
5. Ends with a summary
Format: Markdown with headers, bullets, and emphasis.
```
**Output (LLM-enhanced):**
```markdown
# Development Update: January 1-15, 2026
## Overview
The first two weeks of January saw intense development activity with 45 commits
from 5 contributors. The focus was on authentication improvements and API stability.
## Major Themes
### 🔐 Authentication Overhaul
John and Sarah led a comprehensive rework of the auth system:
- Implemented OAuth2 with Google and GitHub providers
- Added session management with automatic refresh
- Fixed critical security vulnerability in token validation
### 🚀 API Performance
The API team delivered significant improvements:
- Reduced average response time by 40%
- Added pagination to all list endpoints
- Implemented request rate limiting
## Contributors
- **John Doe** (18 commits) — Auth system, security fixes
- **Sarah Smith** (12 commits) — OAuth integration, tests
- **Mike Chen** (10 commits) — API optimization
- 2 others with 5 commits total
## What's Next
The groundwork for v2.0 is complete. Next sprint focuses on the dashboard UI.
```
### 4. Without LLM
When LLM is not available, use templated output from CLI:
```bash
# Narrative format (human-readable)
aoc git story --format narrative
# Changelog format (conventional)
aoc git story --format changelog
# Bullets (simple list)
aoc git story --format bullets
```
## Output Formats
### Narrative (default)
Rich markdown with sections for contributors, grouped commits, and context.
Best for: Onboarding docs, retrospectives
### Changelog
Conventional changelog format grouped by commit type (feat, fix, etc.).
Best for: Release notes, CHANGELOG.md updates
### Bullets
Simple bullet list of commits.
Best for: Quick summaries, PR descriptions
### JSON
Structured data for further processing.
Best for: Feeding to LLM, programmatic use
## Integration Points
### With agent-ops-versioning
```
When generating release notes:
1. Determine version range (last tag to HEAD)
2. Run: aoc git story --since <last-tag> --format changelog
3. Insert into CHANGELOG.md
```
### With agent-ops-docs
```
When updating project documentation:
1. Generate story for significant period
2. Add to docs/history/ or similar
3. Link from main README if appropriate
```
### With Obsidian (FEAT-0196)
```bash
# Export git story to Obsidian vault
aoc git story --last 50 --output story.md
aoc obsidian export-report git-story --last 30 --vault ~/notes
```
## Best Practices
1. **Be specific about time range** — "Last 30 days" is better than "recent"
2. **Exclude merge commits** — Default behavior, cleaner output
3. **Use appropriate format** — Changelog for releases, narrative for humans
4. **Filter by author** when highlighting individual contributions
5. **Group by type** for release notes, by date for retrospectives
## Example Session
**User:** Generate a summary of what happened in the codebase this month.
**Agent:**
```
I'll generate a git story for January 2026.
Running: aoc git story --since 2026-01-01 --format narrative
[Output displayed]
Key highlights:
- 127 commits from 8 contributors
- Major features: OAuth integration, API pagination, Dashboard redesign
- Notable fixes: Security vulnerability patched, performance improvements
Would you like me to:
1. Generate a more detailed breakdown by feature?
2. Create a changelog format for release notes?
3. Focus on a specific contributor's work?
```
## Troubleshooting
| Issue | Solution |
|-------|----------|
| "git is not available" | Install git and ensure it's on PATH |
| No commits found | Check date range, verify you're in a git repo |
| Merge commits cluttering output | Default excludes merges; add `--merges` if needed |
| Large output | Use `--last N` to limit, or filter by date |Related Skills
data-storytelling
Transform data into compelling narratives using visualization, context, and persuasive structure. Use when presenting analytics to stakeholders, creating data reports, or building executive present...
generate-component-story
Create story examples for components. Use when writing stories, creating examples, or demonstrating component usage.
u08871-ethical-dilemma-navigation-for-marketing-and-storytelling
Operate the "Ethical Dilemma Navigation for marketing and storytelling" capability in production for marketing and storytelling workflows. Use when mission execution explicitly requires this capability and outcomes must be reproducible, policy-gated, and handoff-ready.
u01874-handoff-contracting-for-marketing-and-storytelling
Operate the "Handoff Contracting for marketing and storytelling" capability in production for marketing and storytelling workflows. Use when mission execution explicitly requires this capability and outcomes must be reproducible, policy-gated, and handoff-ready.
chatgpt-history
Search and extract data from ChatGPT conversation history. Use when the user asks to find, search, or extract information from their ChatGPT history, conversations, or past chats.
bgo
Automates the complete Blender build-go workflow, from building and packaging your extension/add-on to removing old versions, installing, enabling, and launching Blender for quick testing and iteration.
large-data-with-dask
Specific optimization strategies for Python scripts working with larger-than-memory datasets via Dask.
langsmith-fetch
Debug LangChain and LangGraph agents by fetching execution traces from LangSmith Studio. Use when debugging agent behavior, investigating errors, analyzing tool calls, checking memory operations, or examining agent performance. Automatically fetches recent traces and analyzes execution patterns. Requires langsmith-fetch CLI installed.
langchain-tool-calling
How chat models call tools - includes bind_tools, tool choice strategies, parallel tool calling, and tool message handling
langchain-notes
LangChain 框架学习笔记 - 快速查找概念、代码示例和最佳实践。包含 Core components、Middleware、Advanced usage、Multi-agent patterns、RAG retrieval、Long-term memory 等主题。当用户询问 LangChain、Agent、RAG、向量存储、工具使用、记忆系统时使用此 Skill。
langchain-js
Builds LLM-powered applications with LangChain.js for chat, agents, and RAG. Use when creating AI applications with chains, memory, tools, and retrieval-augmented generation in JavaScript.
langchain-agents
Expert guidance for building LangChain agents with proper tool binding, memory, and configuration. Use when creating agents, configuring models, or setting up tool integrations in LangConfig.