learning-synthesis

star 767

Analyzes a day of Slack-thread user sessions to discover opportunities for new skills, personas, tools, workflows, and system-level improvements. Use alongside gap-analysis for the nightly self-improvement workflow.

paradigmxyz By paradigmxyz schedule Updated 5/18/2026

name: learning-synthesis description: "Analyzes a day of Slack-thread user sessions to discover opportunities for new skills, personas, tools, workflows, and system-level improvements. Use alongside gap-analysis for the nightly self-improvement workflow."

Learning Synthesis

Look across the day's sessions not for what went wrong, but for what the system could learn.

Scope

Use this skill when the input is the same batch of reconstructed user tasks given to gap-analysis, and the goal is to find opportunities rather than failures.

Gap analysis asks: "what broke and how do we fix it?" Learning synthesis asks: "what should we build, know, or become next?"

What To Look For

Scan the evidence packs for these opportunity classes, in roughly this priority:

1. Missing Skills

A user repeatedly asks for a workflow or procedure the bot handles ad-hoc every time. If the same multi-step pattern shows up in 2+ threads, it should probably become a reusable skill with its own SKILL.md, references, and trigger phrases.

Look for:

  • Multi-step procedures the bot assembled from scratch each time
  • Tasks where the bot had to be walked through a process by the user
  • Requests where a skill file would have saved significant back-and-forth

2. Missing Personas

A user needs a consistent stance, voice, or decision-making framework that doesn't match any existing persona. If the bot keeps being asked to "think like X" or "approach this from Y's perspective," that's a persona opportunity.

Look for:

  • Repeated "think like a..." or "approach this as..." framing
  • Tasks where the user had to repeatedly steer the bot's judgment or tone
  • Domains where the existing personas (eng, legal, invest, events) don't cover the user's actual need

3. Domain Knowledge Gaps

The bot had to be taught something by the user that it should already know. If a user corrects the bot about internal processes, team structure, product names, or domain conventions, that knowledge should be baked into a skill, persona, or the system prompt.

Look for:

  • User corrections that teach the bot internal facts
  • "Actually, the way we do this is..." patterns
  • Domain-specific vocabulary or conventions the bot didn't know

4. Tool Opportunities

Users are asking for capabilities that don't exist as tools. If users repeatedly ask the bot to do something it can only hack together with shell commands or workarounds, that's a tool opportunity.

Look for:

  • Shell command workarounds for tasks that should be a proper tool
  • "Can you access X?" where X isn't an integrated service
  • Multi-step tool-call sequences that could be a single higher-level tool method

5. Workflow Automation

Users are doing manual multi-session workflows that could be automated. If you see a pattern like "every Monday the user asks the bot to do X, then Y, then Z," that's a scheduled workflow opportunity.

Look for:

  • Recurring temporal patterns (daily, weekly, ad-hoc but regular)
  • Multi-turn sessions that follow a predictable structure
  • Tasks that a user shouldn't have to ask for because they're predictable

6. System Prompt Improvements

Sessions reveal that the base system prompt or a persona overlay is missing guidance that would prevent recurring confusion.

Look for:

  • Cases where the bot misunderstood its role or capabilities
  • Tasks where the bot didn't know about available tools or workflows
  • Patterns where adding one line to the system prompt would prevent a class of mistakes

Evidence Rules

Use the same evidence packs as gap-analysis. Do not request additional data.

Follow-up messages are provided as raw text. Interpret them semantically to understand what users actually needed, not just whether the task "passed" or "failed."

Focus on patterns across sessions, not individual task quality. A single instance is an anecdote; 2+ instances of the same demand pattern are a signal.

A separate reconciliation step will deduplicate your selected builds against gap-analysis fixes after this pass. Focus on finding the best opportunities; the workflow handles cross-pass merging.

Output Contract

Return JSON only. Use EXACTLY these top-level keys:

{
  "sessions_analyzed": 0,
  "opportunities_found": 0,
  "opportunities": [
    {
      "title": "Short descriptive title",
      "opportunity_type": "new_skill",
      "evidence_summary": "What sessions showed this pattern",
      "evidence_threads": ["C123:1700.100"],
      "what_exists_today": "How the bot handles this now",
      "what_should_exist": "What the improvement would look like",
      "target_surface": "tools/personas/eng/PROMPT.md",
      "implementation_sketch": "Concrete first step — not vague",
      "confidence": "high",
      "user_value": "Why this matters to users"
    }
  ],
  "selected_builds": []
}

opportunity_type values

  • new_skill — a reusable skill file for a recurring procedure
  • new_persona — a new persona overlay for a recurring stance/voice
  • skill_improvement — add references, examples, or steps to an existing skill
  • persona_improvement — add guidance to an existing persona overlay
  • new_tool_idea — a tool that should exist but doesn't
  • new_workflow_idea — a scheduled or triggered workflow that should exist
  • system_prompt_improvement — a change to the base system prompt
  • domain_knowledge — factual knowledge that should be baked in somewhere

selected_builds array

From the opportunities list, select up to the workflow-provided maximum for autonomous implementation. Each entry uses the same schema as opportunities but represents a commitment to build, not just an observation.

Only select builds where:

  • The pattern appears in 2+ sessions (not a one-off)
  • You can name a specific target_surface (file path)
  • The implementation is small enough for one focused PR
  • The user value is clear

Each selected build MUST additionally include a slack_narrative field — a 2–4 sentence plain-English note that names the specific users who surfaced the pattern, describes what they were trying to do, and explains why this opportunity is worth building now. Use the source_user_name field on each evidence pack to ground the narrative in real people. This field is posted to the internal ai-v2 Slack channel and is stripped before the implementing agent sees the fix packet, so user names and concrete task details are encouraged here. Do NOT invent situations — stay grounded in provided evidence.

If no opportunity meets that bar, return an empty selected_builds array. Observations still go in opportunities for the scorecard.

What Not To Do

  • Do not duplicate gap-analysis findings. If something is a quality bug, it belongs in gap-analysis, not here.
  • Do not propose vague "we should be smarter about X" recommendations. Every opportunity must have a concrete target_surface and implementation_sketch.
  • Do not over-index on a single session. One user asking for something once is not a system-level opportunity.
Install via CLI
npx skills add https://github.com/paradigmxyz/centaur --skill learning-synthesis
Repository Details
star Stars 767
call_split Forks 135
navigation Branch main
article Path SKILL.md
More from Creator