Production Skills Framework for Agentic LLM Workflows

workos · Tech · 2026 · source Agentic: yes · promotional bias: med · source-backed · extracted with prompt 0.5.6 (schema v2)

Generated from extraction.json — do not edit by hand. Every claim cites verbatim source evidence; stated means the quote directly asserts the claim, implied means it supports it indirectly.

Problem

Domain: Reusable skills for production agentic LLM workflows

WorkOS needed a way to make LLM workflows repeatable across teams and tools instead of reloading context, conventions, and domain knowledge from scratch in every conversation.

Constraints:

Architecture

WorkOS packages reusable LLM workflows as skills: folders containing skill.md with YAML front matter, routing descriptions, constraints, progressive-disclosure references, and optional scripts/resources. Skills can be project-specific, global, marketplace-distributed, or packaged as .skill files. WorkOS uses them in production through its CLI installation tool, where Claude Agent SDK executes framework-specific AuthKit setup using public WorkOS skills. Skills are evaluated against baselines, iterated from conversation transcripts, and shared across technical and non-technical workflows.

Diagram confidence: reconstructed (reconstructed from prose).

flowchart LR
  user-task["User task"] --> skill-router["Skill router"]
  skill-router["Skill router"] --> skill-package["Skill package"]
  skill-package["Skill package"] --> progressive-disclosure-references["Progressive disclosure references"]
  skill-package["Skill package"] --> deterministic-scripts["Deterministic scripts"]
  skill-package["Skill package"] --> llm-agent-runtime["LLM agent runtime"]
  progressive-disclosure-references["Progressive disclosure references"] --> llm-agent-runtime["LLM agent runtime"]
  deterministic-scripts["Deterministic scripts"] --> llm-agent-runtime["LLM agent runtime"]
  llm-agent-runtime["LLM agent runtime"] --> workos-cli-installer["WorkOS CLI installer"]
  workos-cli-installer["WorkOS CLI installer"] --> workos-api-proxy["WorkOS API proxy"]
  workos-cli-installer["WorkOS CLI installer"] --> application-codebase["Application codebase"]
  skill-package["Skill package"] --> skill-repositories["Skill repositories"]
  skill-repositories["Skill repositories"] --> evaluation-harness["Evaluation harness"]
  llm-agent-runtime["LLM agent runtime"] --> evaluation-harness["Evaluation harness"]
Drag to pan · scroll or use +/− to zoom · reconstructed from the source's described component topology

Components

Component Role Interacts with
User task Developer, business, media, recruiting, or automation request that may match one or more skills. Skill router
Skill router Uses skill descriptions to select relevant skills for the current task. User task, Skill package
Skill package Folder containing skill.md plus referenced files, scripts, and resources. Skill router, Progressive disclosure references, Deterministic scripts, LLM agent runtime
Progressive disclosure references Additional markdown/context loaded only when a condition or framework makes it relevant. Skill package, LLM agent runtime
Deterministic scripts Optional shell or API scripts that inject command outputs into the LLM context. Skill package, LLM agent runtime
LLM agent runtime Claude/Codex/Cursor-style environment that follows skills, invokes tools, and performs the task. Skill package, Progressive disclosure references, Deterministic scripts, WorkOS CLI installer, Evaluation harness
WorkOS CLI installer Production CLI that uses skills through Claude Agent SDK to install AuthKit in user applications. LLM agent runtime, WorkOS API proxy, Application codebase
WorkOS API proxy Proxies API authentication so CLI users can run onboarding without manual token setup. WorkOS CLI installer
Application codebase Target repository where framework-specific authentication setup is detected, removed, installed, or modified. WorkOS CLI installer
Skill repositories Public, internal, team, and personal repositories/distribution scopes for skills. Skill package, Evaluation harness
Evaluation harness Compares skill-assisted performance against baselines, success thresholds, and transcript-derived failure cases. LLM agent runtime, Skill repositories

Data flow

A user task enters an LLM environment with available skills. The model reads skill descriptions to route the task, loads only the relevant skill and any conditionally referenced files, and follows constraints such as command choices or citation rules. Optional scripts run deterministic commands and interpolate results back into context. In WorkOS CLI, npx workos install detects the application framework, loads framework-specific skills, calls WorkOS APIs through a proxied token, modifies authentication setup, and benefits from the same skill improvements as manual developer workflows.

3 supporting quotes
“Skills are discrete, portable units of work defined primarily through markdown files with YAML front matter.”summary, stated
“The framework supports progressive disclosure, where skills can reference additional markdown files that are only loaded when specific conditions are met.”summary, stated
“The entire intelligence layer runs on the Claude Agent SDK (programmatic Claude Code) with all domain knowledge encoded in skills stored in the public WorkOS skills repository.”summary, stated

Why this architecture

Skills turn implicit prompting know-how into versioned, portable context artifacts. Descriptions make routing semantic, progressive disclosure controls context bloat, scripts inject deterministic facts, and evaluation catches skills that no longer help as models improve. WorkOS also uses the same skills in production CLI flows and manual developer workflows, so improvements compound across both interfaces.

3 supporting quotes
“The description serves as a routing rule that LLMs use to determine when to invoke the skill.”summary, stated
“This prevents context window bloat while maintaining access to detailed information when needed.”summary, stated
“Improving the skill improves both CLI and manual workflows simultaneously”summary, stated

Models used: Claude Agent SDK · Claude Code · Claude Desktop · Codex · Cursor · Imagen 3 · video generation APIs

Scale

Alternatives considered (roads not taken)

Repeated ad hoc prompting in every session

Rejected because: It wastes time, creates inconsistent outputs, and keeps useful workflows siloed with individual users.

“Users must repeatedly provide the same information about coding conventions, project structures, preferences, and domain knowledge with each new interaction.”summary, stated

Load all repository context into claude.md or agents.md

Rejected because: Repository memory can bloat context windows with information that is not relevant to the current task.

“they bloat context windows with information that may not always be relevant and aren't easily portable across projects”summary, stated

Ask the LLM to discover command outputs itself every time

Rejected because: Scripts produce deterministic, consistent data and avoid multiple attempts at command formulation.

“instead of asking the LLM to "find the last 10 commits," a skill might execute a specific git command and provide the formatted results directly.”summary, stated

Keep skills forever once written

Rejected because: Model capabilities evolve, and old skill instructions can become counterproductive.

“evaluation revealed that a Next.js skill was actually degrading performance because Claude had become inherently proficient with Next.js”summary, stated

Patterns

context-engineering (context)

Skills codify reusable instructions, constraints, routing descriptions, and progressive context into portable artifacts.

“Skills are discrete, portable units of work defined primarily through markdown files with YAML front matter. At their simplest, a skill consists of a single skill.md file containing:”summary, stated

tool-use-orchestration (architecture)

Skills can invoke deterministic scripts or API chains and feed their outputs back into the model context.

“Script Interpolation: Skills can use bang-backtick syntax to execute scripts and inject their output directly into the LLM context. For example, instead of asking the LLM to "find the last 10 commits," a skill might execute a specific git command and provide the formatted results directly.”summary, stated

eval-driven-development (quality)

WorkOS evaluates skills against baseline model performance and success thresholds before treating them as production improvements.

“Baseline comparison: Running tasks with and without the skill to measure improvement. Skills must demonstrate measurable benefit over the model's baseline capabilities.”summary, stated

human-in-the-loop-gate (workflow)

Confidence scoring forces the LLM to ask clarifying questions rather than proceed when a task is under-specified.

“The LLM only proceeds when confidence exceeds a threshold (typically 90-95%), otherwise it asks clarifying questions.”summary, stated

structured-output-contract (interface)

Skills package markdown, front matter, referenced files, scripts, and resources into a predictable folder contract that can be versioned and shared.

“Skill structure: A skill is actually a folder containing skill.md plus any referenced files, scripts, and resources. The folder can be versioned, distributed via git, or packaged as a .skill file.”summary, stated

Tradeoffs

Use skills rather than plain conversation memory

Chose Portable markdown skill packages over Repeated prompt setup or repository-local instruction files only.

Rationale: Skills are shareable, versionable, routeable, and scoped to the task rather than permanently loaded into context.

“This flexibility allows skills to be shared at appropriate scopes - individual, team, organization, or public - while maintaining version control through standard git workflows.”summary, stated

Embed deterministic scripts in skills

Chose Script interpolation for facts and command outputs over Letting the LLM formulate every command ad hoc.

Rationale: Scripts reduce token waste and make repeated workflows more consistent.

“• Saves tokens by avoiding multiple attempts at command formulation”summary, stated

Use skills in both CLI and manual workflows

Chose One skill repository powering WorkOS CLI and developer usage over Separate implementation knowledge for product automation and human prompting.

Rationale: Improvements to the skill improve both programmatic and manual workflows simultaneously.

“Two birds with one stone: Skills are proven in production CLI usage while remaining available for manual developer use”summary, stated

Evaluate skills against model baselines

Chose Baseline and rubric-based tests over Assuming every skill improves performance.

Rationale: Some skills become harmful as models improve, so measured improvement is necessary.

“Rubric-based scoring: Skills are evaluated against confidence thresholds (typically 80-90% success rate) across multiple test runs. If a skill fails to meet the threshold or performs worse than baseline, it fails the evaluation.”summary, stated

Gotchas (what bit them)

Skill libraries can create context bloat.

Root cause: Loading all available skills or repository instructions adds irrelevant context as libraries grow.

Resolution: Use progressive disclosure and scoped skill repositories so only relevant context is loaded.

“Context bloat: As skill libraries grow, loading all available skills becomes counterproductive. Questions include:”summary, stated

Skill descriptions determine routing quality.

Root cause: LLMs use description fields as semantic routing metadata, so vague or overlapping descriptions cause wrong skill activation.

Resolution: Treat descriptions as routing rules and govern overlapping skills.

“When multiple skills are available, LLMs use descriptions to route tasks to appropriate skills. Teams can have framework-specific image generation skills, with descriptions that trigger on context like "personal blog uses pixel art" versus "work projects use S3-hosted professional imagery."”summary, stated

Skills can become stale as models improve.

Root cause: Instructions that once helped may overconstrain newer models with stronger baseline capabilities.

Resolution: Re-evaluate skills after model releases and remove or reduce obsolete instructions.

“As new models release, skills are re-evaluated to ensure they still provide value.”summary, stated

Organizational skill proliferation creates governance problems.

Root cause: Many engineers can create overlapping skills without clear ownership, review, or canonical repositories.

Resolution: Use scoped public, internal, team, and individual repositories with plugin-style versioning and review.

“• Managing proliferation of similar skills with overlapping descriptions”summary, stated

Evaluation

WorkOS evaluates skills by comparing task performance with and without the skill, scoring multiple runs against rubrics and confidence thresholds, re-running as models evolve, and analyzing local JSONL conversation transcripts after production use.

Metrics: baseline comparison · 80-90% success threshold · 90-95% confidence threshold · multiple test runs · transcript-derived failures · model-evolution regression checks

3 supporting quotes
“Baseline comparison: Running tasks with and without the skill to measure improvement. Skills must demonstrate measurable benefit over the model's baseline capabilities.”summary, stated
“Rubric-based scoring: Skills are evaluated against confidence thresholds (typically 80-90% success rate) across multiple test runs. If a skill fails to meet the threshold or performs worse than baseline, it fails the evaluation.”summary, stated
“Analyze conversation transcripts (stored locally in JSONL files) to identify edge cases, failures, and inefficiencies”summary, stated

Outcomes

Concrete scale anchors include 6-8 months of AI-assisted coding, 100-point rubrics, 90-95% confidence thresholds, 80-90% evaluation success thresholds, 30-second video generation, a 32-minute film, under-7-second image generation, and governance questions for 60 engineers.

3 supporting quotes
“The flagship production implementation is WorkOS's CLI tool, which automates authentication setup in web applications.”summary, stated
“This portability is achieved through the simple markdown-based format with minimal provider-specific dependencies. Skills become organizational knowledge artifacts that transcend specific tooling choices.”summary, stated
“In one case, evaluation revealed that a Next.js skill was actually degrading performance because Claude had become inherently proficient with Next.js”summary, stated