Development

SuggestSkills

Discover WHICH new skills you should create, from your own work history plus your satisfaction/frustration signals.

01
Workflow
01
Tool
00
References
07
Triggers

Key Points

  • Read-only and proposal-only: it surfaces recurring pain that no existing skill, loop, or workflow covers, then hands you a ranked shortlist to build with CreateSkill
  • It never creates or edits a skill itself
  • Frustration is a first-class signal (a topic can look 'covered' while you keep hitting the same wall inside it), so it reads low ratings and recurrence markers, not just session topics
Not for creating/validating/testing/optimizing an individual skill (use CreateSkill) — this only decides WHAT to build, not how

Inside the Skill

The thinking, frameworks, and architecture that distinguish this skill from a generic version of the same task.

Why it is separate from CreateSkill

Discovery is read-only; creation mutates. Keeping the two apart is the permission boundary that makes "never auto-create" real rather than a promise in prose: this skill cannot write a skill even if asked.

The two blind spots it exists to defeat

  1. Frustration is invisible to topic-matching. A topic can be nominally covered by a build/test skill while you keep hitting the same wall inside it. Low ratings and "regressed again" recurrence are the strongest signal a skill is missing. Weight them above raw topic frequency.
  2. Discipline gaps hide under covered topics. "App development" maps to a build skill, but the recurring pain may be an unowned discipline (state modeling, error handling, migration safety) that the build skill never addresses. Coverage means the discipline is genuinely handled, not that the topic shares a keyword.

Examples

Example 1: routine gap scan

User: "What skills should I build based on my recent work?"
→ Invokes Scan workflow
→ Runs Tools/CollectSignals.ts over the last 45 days
→ Clusters sessions + low ratings, dedups against existing skills/workflows
→ Returns a ranked shortlist with evidence per proposal; nothing is created

Example 2: frustration-led scan

User: "I keep hitting the same wall — am I missing a skill?"
→ Invokes Scan workflow with the frustration store as the lead signal
→ Surfaces discipline gaps hiding under topics that look covered
→ User accepts one proposal → handed to CreateSkill as a separate step

Gotchas

  • A clean topic-coverage result with dirty frustration signals is a FALSE negative. If the ratings show recurring frustration in an area you marked covered, re-open it — the discipline under that topic is the gap. (This is the exact failure this skill was built to fix.)
  • Recurrence is severity-weighted, not a bare count. Three trivial sessions matter less than one long, painful, repeated migration. A high-severity pain that recurs across a few sessions qualifies even below an arbitrary threshold.
  • Behavior is not a skill. "Too verbose", "misread scope", "repeated a reminder" are steering/feedback, not skill gaps. Separate them out and route them to memory/preferences, not to CreateSkill.
  • Gathering is deterministic on purpose. If you find yourself grepping stores by hand in the workflow, use the tool instead — hand-gathering makes runs non-reproducible and the eval meaningless.
  • Paths are discovered, not assumed. The tool resolves stores via flags/env/root, so it works across installs; do not hardcode a home directory.
  • A large work store makes the session list long, not the analysis better. The default 45-day window is the lever — widen it deliberately, and expect the cluster step to carry the cost.

Workflows & Routing · 1

Each workflow is one job the skill runs. The trigger phrases route your request to the right one — this is the skill's routing table.

  1. 01
    Scan Workflows/Scan.md

    what skills should I build, skill gap, suggest skills, am I missing a skill

Tools · 1

Deterministic executables the workflows call — the code that does the real work, not prompt scaffolding.

  • CollectSignals.ts

How to Invoke

Say any of these to your DA and LifeOS activates the SuggestSkills skill automatically:

  • "should I create a skill"
  • "what skills do I need"
  • "suggest skills"
  • "skill gap"
  • "based on my recent work"
  • "am I missing a skill"
  • "what should I build"

Or invoke explicitly:

Skill("SuggestSkills")

Want LifeOS to do this for you?

Install LifeOS on your machine — your DA gets the SuggestSkills skill plus 55 others, all hooked into one Life OS.