[FEATURE]: Add skill usage tracking to CLI
Summary
Track which skills are used in each session. Every time a skill is invoked, increment its counter in a local JSON file (~/.config/opencode/skills/usage.json).
Why This Helps
As a developer, I want to know:
- Which skills do I actually use?
- Which skills am I ignoring?
- Am I over-relying on one skill?
Right now the CLI has no visibility into this. The only way to know is manual tracking or guesswork.
What It Does
The implementation writes a simple JSON file:
{
"go-testing": 12,
"issue-maker": 5,
"pr-creator": 3
}
Every time you invoke a skill, the counter goes up by 1. That's it.
Why Not Database?
JSON file is:
- Zero setup - No migration needed
- Portable - Read it from any tool
- Silent failures - If it breaks, the CLI keeps working
- Privacy - Stays local, no telemetry sent anywhere
My OpenCode Manager App
I built a personal JavaFX desktop app for managing OpenCode skills:
https://github.com/zokan121522/OpenCodeManager-app
Features:
- Browse and edit skills with markdown preview
- Browse Engram memories (persistent memory for AI agents)
- Usage dashboard - see which skills you use most
- Modern dark UI with gold accents
Right now the CLI change makes the usage file, and my app can read it. Eventually the app could show graphs, trends, etc.
Engram
The issue mentions Engram (persistent memory system by Gentleman Programming). This is a different feature - Engram is about memory across sessions, usage tracking is about skill frequency. Both can coexist!
Try Engram: https://github.com/Gentleman-Programming/engram
Related
There's existing issue #14201 (Show skills used during a session) which is similar. Happy to close this and work on that one instead, or collaborate!
Happy to discuss or rewrite further!
[FEATURE]: Add skill usage tracking to CLI
Summary
Track which skills are used in each session. Every time a skill is invoked, increment its counter in a local JSON file (
~/.config/opencode/skills/usage.json).Why This Helps
As a developer, I want to know:
Right now the CLI has no visibility into this. The only way to know is manual tracking or guesswork.
What It Does
The implementation writes a simple JSON file:
{ "go-testing": 12, "issue-maker": 5, "pr-creator": 3 }Every time you invoke a skill, the counter goes up by 1. That's it.
Why Not Database?
JSON file is:
My OpenCode Manager App
I built a personal JavaFX desktop app for managing OpenCode skills:
https://github.com/zokan121522/OpenCodeManager-app
Features:
Right now the CLI change makes the usage file, and my app can read it. Eventually the app could show graphs, trends, etc.
Engram
The issue mentions Engram (persistent memory system by Gentleman Programming). This is a different feature - Engram is about memory across sessions, usage tracking is about skill frequency. Both can coexist!
Related
There's existing issue #14201 (Show skills used during a session) which is similar. Happy to close this and work on that one instead, or collaborate!
Happy to discuss or rewrite further!