activity-log
Query and manage the unified .aiwg/activity.log chronological record of AIWG-managed workflow operations
What this skill does
# Activity Log
You query and manage the unified `.aiwg/activity.log` — a chronological record of all framework operations across SDLC, research, and other AIWG-managed workflows.
## Triggers
Alternate expressions and non-obvious activations (primary phrases are matched automatically from the skill description):
- "what happened recently" → show (default limit)
- "show me today's activity" → show --since today's date
- "log a create operation" → append create <summary>
- "how many deploys have we done" → stats
- "activity since last week" → show --since YYYY-MM-DD
## Trigger Patterns Reference
| Pattern | Example | Action |
|---------|---------|--------|
| Recent activity | "show activity log" | `activity-log show` |
| Filtered by date | "activity since 2026-04-10" | `activity-log show --since 2026-04-10` |
| Filtered by operation | "show all deploys" | `activity-log show --operation deploy` |
| Limited output | "last 5 entries" | `activity-log show --limit 5` |
| Manual append | "log that we archived the SAD draft" | `activity-log append archive <summary>` |
| Statistics | "how many operations by type" | `activity-log stats` |
## Behavior
When triggered:
1. **Identify the subcommand**:
- `show` — display entries, optionally filtered
- `append` — add a manual entry
- `stats` — summarize operation counts and date range
2. **Locate the log file**: `.aiwg/activity.log` relative to the project root. If the file does not exist, report it as empty (do not error).
3. **Execute the subcommand**:
### `show`
Display entries in reverse-chronological order (newest first).
```bash
# Show last 20 entries (default)
aiwg activity-log show
# Filter by date (inclusive)
aiwg activity-log show --since 2026-04-10
# Filter by operation type
aiwg activity-log show --operation deploy
# Limit output count
aiwg activity-log show --limit 5
# Combine filters
aiwg activity-log show --since 2026-04-10 --operation create --limit 10
```
Accepted `--operation` values: `ingest`, `create`, `update`, `delete`, `query`, `lint`, `deploy`, `archive`, `promote`
### `append`
Add a manual entry with the current UTC timestamp.
```bash
# Append a manual entry
aiwg activity-log append <operation> "<summary>"
```
Example:
```bash
aiwg activity-log append create "UC-011-logout.md created manually during team review"
```
The entry is written in standard format:
```
## [2026-04-12 14:33] create | UC-011-logout.md created manually during team review
```
Reject invalid operation tokens with a clear error listing the nine valid tokens.
### `stats`
Summarize operation counts grouped by type and show the date range covered.
```bash
aiwg activity-log stats
```
Output format:
```
Activity Log Statistics
Log file: .aiwg/activity.log
Date range: 2026-04-01 → 2026-04-12 (12 days)
Total entries: 47
By operation:
create 18 ████████████████████ 38%
update 12 █████████████ 26%
deploy 7 ████████ 15%
archive 4 ████ 9%
lint 3 ███ 6%
promote 2 ██ 4%
delete 1 █ 2%
```
## Examples
### Example 1: Recent activity overview
**User**: "What's happened in the activity log recently?"
**Extraction**: show subcommand, default limit
**Action**:
```bash
aiwg activity-log show --limit 10
```
**Response**: Last 10 entries from `.aiwg/activity.log` newest first. If the file is absent, report "No activity log found at .aiwg/activity.log — operations will create it automatically."
### Example 2: Audit all deploys
**User**: "Show me all deploy operations since April 10th"
**Extraction**: show, --operation deploy, --since 2026-04-10
**Action**:
```bash
aiwg activity-log show --operation deploy --since 2026-04-10
```
**Response**: Filtered entries matching `deploy` on or after 2026-04-10, newest first.
### Example 3: Manual log entry
**User**: "Log that we archived the old SAD draft"
**Extraction**: append, operation = archive, summary from user phrase
**Action**:
```bash
aiwg activity-log append archive ".aiwg/working/sad-draft-v0.1.md archived manually after SAD baseline"
```
**Response**: "Entry appended to .aiwg/activity.log."
### Example 4: Operation statistics
**User**: "Give me a stats breakdown of the activity log"
**Extraction**: stats subcommand
**Action**:
```bash
aiwg activity-log stats
```
**Response**: Tabular summary with operation counts, percentages, and date range.
## Clarification Prompts
If the user's intent is ambiguous:
- "Are you looking to read recent activity or record a new entry?"
- "Which operation type should I filter on? Valid types: ingest, create, update, delete, query, lint, deploy, archive, promote."
## Storage routing
`aiwg activity-log` routes through `resolveStorage('activity_log')` (#964). On the default `fs` backend, the log file is `.aiwg/activity.log` and the line format is byte-identical to the legacy `echo >> .aiwg/activity.log` pattern. Configuring `.aiwg/storage.config` redirects the log to a different filesystem location (via `roots.activity_log`) without changing how agents call the CLI.
## References
- @$AIWG_ROOT/agentic/code/addons/aiwg-utils/rules/activity-log.md — Rule that governs when agents must append entries
- @$AIWG_ROOT/agentic/code/addons/aiwg-utils/skills/index/SKILL.md — Artifact index skill (complementary query tool)
- @$AIWG_ROOT/.aiwg/architecture/storage-design.md — Storage adapter design (#934)
- @$AIWG_ROOT/docs/cli-reference.md — CLI reference
Related in General
modeling-omnistudio-epc-catalog
IncludedSalesforce Industries CME EPC product-modeling skill for Product2-based catalog creation. Use when creating EPC products, configuring product attributes, building offer bundles with Product Child Items, or reviewing EPC DataPack JSON metadata for product catalog changes. TRIGGER when: user creates or updates Product2 EPC records, AttributeAssignment payloads, AttributeMetadata/AttributeDefaultValues, Offer bundles, or ProductChildItem relationships. DO NOT TRIGGER when: designing OmniScripts/FlexCards/Integration Procedures (use building-omnistudio-omniscript, building-omnistudio-flexcard, or building-omnistudio-integration-procedure), implementing Apex business logic (use generating-apex), or troubleshooting deployment pipelines (use deploying-metadata).
relationship-science-coach
IncludedUse this skill for direct, practical adult relationship coaching: couples conflict, repair, trust, marriage, dating, flirting, attachment patterns, emotional connection, sex, desire differences, eroticism, kink negotiation, affection, love languages, breakups, and long-term passion. Draw on Gottman, EFT and Hold Me Tight, attachment science, modern sex research, Perel, Nagoski, Kerner, Schnarch, Love and Stosny, and flexible love-language tools. Be concrete and low-hedge. Redirect only for imminent danger, abuse, coercive control, minors, non-consent, self-harm, stalking, or medical/legal/psychiatric decisions.
building-sf-integrations
IncludedSalesforce integration architecture and runtime plumbing with 120-point scoring. Use this skill to set up Named Credentials, External Credentials, External Services, REST/SOAP callout patterns, Platform Events, and Change Data Capture. TRIGGER when: user sets up Named Credentials, External Services, REST/SOAP callouts, Platform Events, CDC, or touches .namedCredential-meta.xml files. DO NOT TRIGGER when: Connected App/OAuth config (use configuring-connected-apps), Apex-only logic (use generating-apex), or data import/export (use handling-sf-data).
venue-templates
IncludedAccess comprehensive LaTeX templates, formatting requirements, and submission guidelines for major scientific publication venues (Nature, Science, PLOS, IEEE, ACM), academic conferences (NeurIPS, ICML, CVPR, CHI), research posters, and grant proposals (NSF, NIH, DOE, DARPA). This skill should be used when preparing manuscripts for journal submission, conference papers, research posters, or grant proposals and need venue-specific formatting requirements and templates.
let-fate-decide
IncludedDraws the 12 Houses of the Zodiac Tarot spread to inject entropy into planning when prompts are vague, ambiguous, or casually delegated. Interprets the spread to guide next steps. Use when the user says 'let fate decide', 'YOLO', 'whatever', 'idk', or other nonchalant phrases, makes Yu-Gi-Oh references, or when you are about to arbitrarily pick between multiple reasonable approaches. Prefer over ask-questions-if-underspecified when the user's tone is casual or playful rather than precision-seeking.
net-ops
IncludedCross-platform network troubleshooting (Windows, macOS, Linux) via local or remote shell. Use for: DNS broken, can't resolve hostnames, nslookup/dig works but apps fail, NRPT, WFP, scutil, /etc/resolver, systemd-resolved, /etc/resolv.conf, NetworkManager, VPN DNS leak residue (ProtonVPN/Mullvad/WireGuard/AnyConnect), AV/firewall blocking DNS or DoH, Tailscale DNS interaction, intermittent connectivity, remote diagnostics over SSH.