AI Skills

Build a Team-Owned AI Skills Library for Claude and Codex

Direct Answer

The best way to share AI skills across a team is to treat them like maintained software, not prompt files. Put the canonical skills in a company-controlled Git repository, package them for the agent clients your team uses, require review and regression examples before release, and give each skill an owner, version, permission boundary, and retirement rule.

Remy Gaskell's setup captures the right organizational shift: a useful process should not live only in one employee's chat history or local folder. The Git repository creates one source of truth, while plugins make those processes installable in Claude Code and Codex. The missing layer is governance. Automatic distribution can spread a bad edit as efficiently as a good one.

Operating principle: thin agents, reusable skills, explicit permissions, and a controlled release pipeline.

Watch Greg Isenberg and AI with Remy

Episode credit: Greg Isenberg. Guest and workflow credit: Remy Gaskell, AI with Remy. Watch the original video on YouTube. The episode contains a Brex sponsorship segment.

A Skill Is an Executable SOP

Remy's definition is useful: a skill is an SOP for AI. Instead of re-explaining proposal structure, brand voice, Notion formatting, or email design in every conversation, the team captures the process in a SKILL.md file. The agent sees the skill name and description, loads the full procedure when relevant, and applies it to the current task.

A skill is more than saved prose when it includes:

  • A precise trigger and intended outcome
  • Required inputs and approved sources
  • Step-by-step procedure and reusable scripts
  • Tool and data permissions
  • Output format and quality examples
  • Failure behavior, escalation, and verification

The skill does not make the model remember everything. It supplies repeatable context when invoked. Its result still depends on the model, available tools, current data, and whether the procedure contains a testable definition of good.

From Single-Player Skills to a Team Supply Chain

LayerPurposeControl
Personal sandboxExperiment with downloaded, private, or unfinished skills.No automatic team distribution; no production credentials.
Portable skills coreCanonical SKILL.md files, references, examples, and scripts.Client-neutral behavior and regression fixtures.
Client adaptersClaude Code and Codex manifests, hooks, marketplace metadata, and app dependencies.Document product-specific behavior instead of pretending it is portable.
Review pipelineLint, secret scan, security review, examples, and owner approval.Protected main branch and required checks.
Release channelsPilot, stable, and archived versions.Version pinning, changelog, rollback, and staged rollout.
ObservabilityInvocation, success, correction, latency, and accepted-output data.Minimal collection, transparent purpose, retention, and access rules.

This preserves Remy's one-source-of-truth idea without making the repository one undifferentiated folder that every employee installs.

A Repository That Supports Two Agent Clients

team-agent-capabilities/
  plugins/
    brand/
      skills/
        brand-voice/
          SKILL.md
          references/
          examples/
      plugin.json                 # Portable Agent Plugins manifest
      .claude-plugin/plugin.json  # Claude Code adapter
      .codex-plugin/plugin.json   # ChatGPT and Codex adapter
    newsletter/
      skills/
        weekly-research/
        write-draft/
        titles/
  .claude-plugin/
    marketplace.json             # Claude Code marketplace catalog
  tests/
    brand-voice/
    newsletter/
  docs/
    ownership.md
    release-policy.md
    security-review.md
  CHANGELOG.md
  README.md

The exact manifests will evolve, so generate and validate them from current product tooling rather than copying an old snippet. Claude Code currently uses .claude-plugin/plugin.json inside each plugin and a marketplace catalog for distribution. OpenAI currently documents .codex-plugin/plugin.json for ChatGPT and Codex packages. The vendor-neutral Agent Plugins specification defines a portable root plugin.json, skills/, and optional MCP configuration.

That means the honest portability claim is: one repository and one skill source can support multiple clients, with small adapters and separate validation. Hooks, admin deployment, permission models, update timing, and connected tools are not automatically identical.

The Minimum Skill Contract

FieldQuestion it must answer
Name and descriptionWhen should the agent discover this skill, and when should it not?
Owner and versionWho approves changes, and what release produced this behavior?
OutcomeWhat user or business result should exist when the skill finishes?
InputsWhich fields, files, sources, and assumptions are required?
PermissionsWhat may the agent read, draft, edit, send, publish, or purchase?
ProcedureWhat sequence, decision points, and reusable sub-skills apply?
OutputWhat exact artifact and evidence must be returned?
Acceptance testsWhich examples, commands, rubric, and edge cases define success?
Failure behaviorWhen should the skill stop, ask, retry, or escalate?
Improvement ruleHow are corrections proposed without silently changing production?

Remy's "thin agents, thick skills" principle is valuable because workflow knowledge loads only when needed. Thick should mean complete and testable, not bloated. Move long references and examples into supporting files, keep the discovery description precise, and make each section earn its context cost.

What Deserves to Become a Skill?

Do not convert every chat into company infrastructure. Score candidate work on five factors:

  1. Frequency: Does the task recur enough to recover maintenance cost?
  2. Stability: Is the process understood, or are people still discovering the job?
  3. Variance: Do different teammates produce inconsistent results?
  4. Value and risk: Would better execution save time, protect quality, or reduce a meaningful mistake?
  5. Verifiability: Can the output be checked with examples, rules, tests, or a human rubric?

Start with three to five workflows such as proposal drafting, brand-voice transformation, formatted research briefs, release notes, or a read-only weekly report. Avoid high-stakes skills with unclear ownership, unstable policy, regulated data, or irreversible actions until the review system is mature.

Split a workflow into a chain only when a subtask is useful independently, needs different permissions or models, or has its own acceptance test. Remy's YouTube example makes sense as separate research, titles, thumbnails, and descriptions because each component can run alone. Otherwise, a chain creates more handoffs than value.

Move Skills From Sandbox to Company Asset

  1. Capture. A teammate turns a repeated successful workflow into a candidate skill in a personal or experimental repository.
  2. Sanitize. Remove customer data, credentials, local paths, private examples, and copyrighted material the company cannot redistribute.
  3. Specify. Add the owner, trigger, inputs, permissions, outputs, failure behavior, and acceptance examples.
  4. Review. Open a pull request. A domain owner checks process quality; a technical reviewer checks scripts, hooks, MCP servers, and dependencies.
  5. Test. Run representative happy paths, edge cases, wrong inputs, and a previous known failure on every supported client.
  6. Pilot. Release to a small group with narrow permissions and a defined rollback point.
  7. Promote. Tag a stable version, publish the changelog, and make the plugin available to the intended roles.
  8. Observe. Measure accepted results and corrections, then review after a defined number of runs.
  9. Retire. Archive skills that are unused, duplicative, broken, unowned, or superseded.
Starter migration brief: "Inventory these local skills without modifying them. Group them by owner and business job, identify secrets and private data, flag duplicates, map dependencies, and propose a portable skills core with separate Claude Code and Codex adapters. Create a migration plan, test matrix, versioning policy, rollback procedure, and pilot list. Do not publish, install, or connect external tools until I approve the plan."

This is a safe independent starting brief, not Remy's exact downloadable prompt. His supplied setup is linked in the sources.

What Is Portable Across Claude Code and Codex?

ComponentPortabilityWhat to verify
SKILL.md instructionsStrongest shared layer; both support Agent Skills.Frontmatter, discovery, invocation, available tools, and output behavior.
References and scriptsPortable when paths, runtimes, and dependencies are available.Sandbox, operating system, package versions, network, and credentials.
MCP serversThe open standard supports common transports.Authentication, server configuration, tool names, permissions, and client-supported transports.
Plugin manifestProduct-specific today, with a vendor-neutral interoperability floor emerging.Claude, Codex, and portable manifests validate independently.
HooksOften client-specific.Lifecycle event, matcher, execution environment, data sent, and blocking behavior.
Admin deploymentClient-specific.Role assignment, marketplace policy, app approval, update channel, and regional or plan limits.

The Agent Plugins 1.0 standard deliberately standardizes packaging and discovery for skills and MCP servers, not marketplaces, permissions, runtimes, or every client extension. That is why the repository should preserve a portable core while documenting the adapters.

Auto-Update Needs Release Discipline

Remy correctly emphasizes auto-update because duplicate local copies create drift. The practical behavior is more measured than an instant push. Claude Code can refresh third-party marketplaces and installed plugins at startup when auto-update is enabled; a reload may be needed before the current session uses the new version. Third-party marketplace auto-update is not enabled by default. In managed Codex and ChatGPT workspaces, plugin availability and app permissions depend on admin policy, role, surface, and propagation.

Use three channels:

  • Pilot: latest approved commit for two or three experienced users.
  • Stable: pinned release that passed the cross-client test matrix.
  • Archived: previous known-good version retained for rollback and audit.

Every release should state what changed, why, affected skills, required permissions, migration needs, test evidence, and rollback version. Git history allows restoration, but rollback is only fast when the team knows which deployed version each client is running.

Let Skills Propose Improvements, Not Rewrite Themselves

Remy adds a reflection section to each skill: after a run, identify failures, workarounds, user corrections, and information a future run may need. That is a strong learning loop if the output is a proposal.

  1. Capture the exact failure or correction with a redacted input and expected output.
  2. Classify it as one-off preference, missing example, process defect, tool change, or permission problem.
  3. Draft the smallest patch and add a regression fixture that fails before the change.
  4. Run the skill against existing examples to detect regressions.
  5. Have the skill owner approve and release the change through the normal pipeline.

Do not let a production skill silently edit its own instructions after every user correction. A local workaround can conflict with another team's use case, weaken a safety boundary, or encode sensitive data into the shared repository.

Measure Skills Without Turning the Team Into a Leaderboard

Remy's usage hook can reveal which skills are active, idle, or missing from expected workflows. Useful telemetry includes:

  • Skill name and version
  • Invocation count and completion status
  • Accepted result, correction, or escalation
  • Latency and approximate model or tool cost
  • Client used and failure category

Do not log prompts, customer content, generated documents, credentials, or full tool payloads by default. Tell employees what is collected and why, minimize individual attribution, define retention, restrict access, and provide a correction path. The goal is to improve the library, not rank people by how often they invoke AI.

MetricDecision
Accepted-result rateImprove, preserve, or retire the skill.
Human correction minutesWhether the skill actually saves work.
Failure rate by versionRoll back or investigate a release.
Unused for 90 daysArchive, merge, or retrain the team.
Expected-but-unused workflowFix discovery, documentation, or onboarding.
Permission exceptionsNarrow the job or redesign tool access.

GitHub Custody Is Not the Whole Ownership Story

A company-organization repository provides continuity when a teammate leaves, an audit trail for changes, and a recoverable backup. It does not independently establish intellectual-property ownership. Employment and contractor agreements, third-party licenses, attribution, confidentiality rules, and contribution policy still matter.

Treat plugins as software supply-chain artifacts. A plugin may contain instructions, scripts, hooks, MCP server definitions, and connections to external systems. Before adopting an Internet skill or plugin:

  • Review every file and dependency, not only the README.
  • Scan for secrets, data exfiltration, destructive commands, and untrusted download steps.
  • Pin the reviewed version or commit for stable deployment.
  • Keep first use read-only and limit apps to approved accounts and sources.
  • Require confirmation before sending, publishing, purchasing, deleting, or modifying sensitive records.
  • Revoke access and rotate credentials during offboarding.

OpenAI's current plugin controls preserve the permissions of underlying apps and source systems. Claude Code provides marketplace allowlists, blocks, managed settings, and private repositories. Use those controls; a private repository alone does not prevent an over-permissioned skill from causing damage.

A 14-Day Team Rollout

DaysWorkExit test
1-2Inventory local skills, owners, dependencies, sensitive data, duplicates, and current usage.Every candidate has a named owner and risk tier.
3-4Select three stable, high-frequency, low-risk workflows.Each has representative inputs and an accepted output.
5-6Create the portable skills core, company repository, branch protection, and release policy.No secrets; review and rollback are documented.
7-8Add Claude Code and Codex adapters and validate each package.Both clients discover the intended skills without unsupported features.
9-10Run happy paths, wrong inputs, edge cases, and permission-denied tests.Failures stop safely and produce useful escalation.
11-12Pilot with two teammates and read-only or draft-only tool access.Accepted-result rate and correction time beat the manual baseline.
13Fix discovery, instructions, and examples through reviewed pull requests.Regression fixtures pass on both clients.
14Tag the stable release, publish the changelog, and onboard the intended roles.Every user can verify version, owner, permissions, and support path.

Video Chapters

TimeTopic
00:00Introduction
02:33Skills as SOPs for AI
04:27How an agent uses skills
05:13Why AI still feels single player
06:21Notion, brand voice, and email skills
08:07Early ways to share skills
11:40What a plugin is
14:58Anatomy of a plugin
15:30Version control and rollback
16:58A separate personal-skills repository
18:29The day Claude deleted 150 skills
20:02Skills as company assets
21:00A web application on top of the repository
24:46How many skills to build
27:00The self-improvement loop
28:15Thin agents and thick skills
30:40Closing thoughts

Final Verdict

Remy's system solves a real problem: valuable AI workflows should not disappear with a laptop, a long chat, or an employee departure. A company repository, plugin packaging, and version history turn private tricks into reusable organizational capability.

The durable advantage is not the number of Markdown files. It is the feedback loop: a teammate discovers a better way to work, the improvement becomes a reviewed skill patch, tests prove it still works, a staged release reaches the right roles, and the whole team receives a better process without surrendering control.

Build the library slowly enough to trust it. Three owned, tested, portable skills will create more leverage than 150 local files nobody can review, update, or safely invoke.

Sources and Credits

Common questions

What is an AI agent skill?
A skill is a reusable package of instructions, examples, scripts, and reference material that teaches an agent how to perform a recurring job. It behaves like an executable SOP, but it still needs approved inputs, permissions, tests, and human ownership.
Can the exact same plugin run in Claude Code and Codex?
The skill content can often be shared because both products support Agent Skills, but their plugin manifests, marketplaces, hooks, admin controls, and connected-tool models can differ. Keep one portable skills core and small client-specific adapters instead of assuming every plugin feature is identical.
Does enabling auto-update instantly push every skill change to the team?
No. In Claude Code, third-party marketplace auto-update is opt-in and refreshes at startup, with a plugin reload sometimes required. Codex workspace and directory changes can also take time to propagate. Use explicit releases, a pilot channel, and a verified rollout rather than treating updates as instantaneous.
Does storing skills in the company GitHub organization prove company ownership?
Not by itself. The repository creates custody, history, and continuity. Legal ownership still depends on employment or contractor agreements, licensing, third-party attribution, and company policy.
Should a skill update itself after every run?
It may propose an improvement, but production skills should not silently rewrite themselves. Capture the evidence, create a reviewable patch, run regression examples, obtain an owner approval, and release a new version.
How many skills should a team build?
Start with three to five high-frequency, stable workflows. Add a skill when repetition, quality variance, handoff cost, or compliance justifies maintenance. Archive skills that are unused, duplicative, unowned, or no longer pass their acceptance tests.
Share
X LinkedIn Reddit
Build Yours

Want a system
like this one?

Book a free 30-minute call. We map your situation, identify the highest-impact automation, and figure out if we are a fit.

Book Free 30-min Call