← Agent SkillsCONTENT HISTORY

Update to Agent Skills

Snapshot Oct 9, 2026 · 00:10 UTC · version 0.6.10

WHAT CHANGED · RULE-BASED ANALYSIS

Package or technical metadata updated

Discoverability changed from “UNLISTED” to “LISTED”.

Observed in package metadata. These changes alone do not establish a new customer-facing feature.

Discoverability

Before

UNLISTED

After

LISTED

Share url

Before

Not present

After

https://chatgpt.com/plugins/plugins_6ab00825b73c8191b684c13fdd7a0280?open_in_app

Compare saved observations

Download comparison JSON
Full technical diff · 2 changed fields

changed /discoverability

BEFORE
"UNLISTED"
AFTER
"LISTED"

changed /share_url

BEFORE
null
AFTER
"https://chatgpt.com/plugins/plugins_6ab00825b73c8191b684c13fdd7a0280?open_in_app"
Full snapshot data
{
  "canonical_app_id": null,
  "connector_id": null,
  "created_at": "2026-09-20T16:45:01.798479Z",
  "discoverability": "LISTED",
  "id": "plugins_6ab00825b73c8191b684c13fdd7a0280",
  "is_template": false,
  "name": "agent-skills",
  "release": {
    "app_ids": [],
    "app_manifest": null,
    "app_templates": [],
    "description": "Production-grade engineering skills for AI coding agents covering the full software development lifecycle from spec to ship.",
    "display_name": "Agent Skills",
    "id": "pluginrel_6a7ca54bb5a08191bf17044eaec32af3",
    "interface": {
      "brand_color": null,
      "capabilities": [
        "Planning",
        "Implementation guidance",
        "Testing and review"
      ],
      "category": "Developer Tools",
      "composer_icon_dark_url": null,
      "composer_icon_url": "https://files.openai.com/content?id=file_000000001f8081f4b4c5d65bfa793215",
      "default_prompt": "Plan this engineering task using Agent Skills",
      "default_prompts": [
        "Plan this engineering task using Agent Skills",
        "Review this implementation using the relevant Agent Skills",
        "Choose the right Agent Skill for this coding task"
      ],
      "developer_name": "RONALD FERRARI SOARES",
      "logo_url": "https://files.openai.com/content?id=file_000000001dec81f499982d03e6f4a79f",
      "logo_url_dark": null,
      "long_description": "Provides reusable engineering workflows for planning, coding, reviewing, testing, and shipping software with coding agents.",
      "plugin_category_id": "developer tools",
      "privacy_policy_url": null,
      "screenshot_urls": [],
      "short_description": "Engineering agent workflows",
      "terms_of_service_url": null,
      "website_url": null
    },
    "keywords": [
      "software-engineering",
      "planning",
      "testing",
      "review",
      "shipping"
    ],
    "mcp_servers": [],
    "onboarding_skill_name": null,
    "requires_local_executor": false,
    "skills": [
      {
        "description": "Use when designing APIs, module boundaries, or any public interface. Use when creating REST or GraphQL endpoints, defining type contracts between modules, or establishing boundaries between frontend and backend.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $api-and-interface-design for this task",
          "display_name": "API And Interface Design",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Guides stable API and interface design"
        },
        "name": "api-and-interface-design",
        "plugin_release_skill_id": "pluginrsk_6ab00828e92c8191ad395118a9983ffb"
      },
      {
        "description": "Use when a browser-based application needs real runtime inspection, DOM verification, console or network debugging, performance profiling, screenshots, or end-to-end browser testing.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $browser-testing-with-devtools for this task",
          "display_name": "Browser Testing With Devtools",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "cursor",
          "short_description": "Inspect and test browser apps with runtime evidence"
        },
        "name": "browser-testing-with-devtools",
        "plugin_release_skill_id": "pluginrsk_6ab00828bf50819187a5508998fb3af7"
      },
      {
        "description": "Use when setting up or modifying build and deployment pipelines. Use when you need to automate quality gates, configure test runners in CI, or establish deployment strategies.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $ci-cd-and-automation for this task",
          "display_name": "CI CD And Automation",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "bolt",
          "short_description": "Automates CI/CD pipeline setup"
        },
        "name": "ci-cd-and-automation",
        "plugin_release_skill_id": "pluginrsk_6ab00828aa248191b3b5717abbe6cd13"
      },
      {
        "description": "Use when reviewing code written by yourself, another agent, or a human. Use when you need to assess code quality across multiple dimensions before it enters the main branch.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $code-review-and-quality for this task",
          "display_name": "Code Review And Quality",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Conducts multi-axis code review"
        },
        "name": "code-review-and-quality",
        "plugin_release_skill_id": "pluginrsk_6ab0082f4f3c8191b418905a2d197076"
      },
      {
        "description": "Use when refactoring code for clarity without changing behavior. Use when code works but is harder to read, maintain, or extend than it should be. Use when reviewing code that has accumulated unnecessary complexity.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $code-simplification for this task",
          "display_name": "Code Simplification",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Simplifies code for clarity"
        },
        "name": "code-simplification",
        "plugin_release_skill_id": "pluginrsk_6ab0082f64788191ab1eca9651300cb1"
      },
      {
        "description": "Use when a project needs an explicit quality bar, enforceable standards, coverage or performance thresholds, or safeguards against agents weakening checks to get green.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $constraint-driven-development for this task",
          "display_name": "Constraint Driven Development",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "hierarchy",
          "short_description": "Define and enforce a project quality bar"
        },
        "name": "constraint-driven-development",
        "plugin_release_skill_id": "pluginrsk_6ab0082d4cb481918ac42dd74f0cb0df"
      },
      {
        "description": "Use when starting a new session, when agent output quality degrades, when switching between tasks, or when you need to configure rules files and context for a project.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $context-engineering for this task",
          "display_name": "Context Engineering",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "hierarchy",
          "short_description": "Optimizes agent context setup"
        },
        "name": "context-engineering",
        "plugin_release_skill_id": "pluginrsk_6ab0083089488191b0063ea305f700ad"
      },
      {
        "description": "Use when tests fail, builds break, something that worked yesterday broke, behavior doesn't match expectations, or you encounter any unexpected error. Use when you need to figure out what broke and why — a systematic approach to finding and fixing the root cause rather than guessing.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $debugging-and-error-recovery for this task",
          "display_name": "Debugging And Error Recovery",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Guides systematic root-cause debugging"
        },
        "name": "debugging-and-error-recovery",
        "plugin_release_skill_id": "pluginrsk_6ab00827f7548191a410f451fd2ed342"
      },
      {
        "description": "Use when removing old systems, APIs, or features. Use when migrating users from one implementation to another. Use when migrating a database schema in production, such as renaming or dropping a column without downtime (expand/contract). Use when deciding whether to maintain or sunset existing code.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $deprecation-and-migration for this task",
          "display_name": "Deprecation And Migration",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "hierarchy",
          "short_description": "Manages deprecation and migration"
        },
        "name": "deprecation-and-migration",
        "plugin_release_skill_id": "pluginrsk_6ab00827eaa88191919b0a06ab664a60"
      },
      {
        "description": "Use when you need to document an architecture decision (ADR) or the reasoning behind a design choice, when changing public APIs, shipping features, or when you need to record context that future engineers and agents will need to understand the codebase.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $documentation-and-adrs for this task",
          "display_name": "Documentation And Adrs",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "pen",
          "short_description": "Records decisions and documentation"
        },
        "name": "documentation-and-adrs",
        "plugin_release_skill_id": "pluginrsk_6ab0082be9bc81918a5a9647c99c65d7"
      },
      {
        "description": "Use when a plan or implementation needs adversarial scrutiny because assumptions are uncertain, stakes are high, or correctness matters more than speed.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $doubt-driven-development for this task",
          "display_name": "Doubt Driven Development",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "radar",
          "short_description": "Cross-examine assumptions before proceeding"
        },
        "name": "doubt-driven-development",
        "plugin_release_skill_id": "pluginrsk_6ab0082a0e20819194b20ecd769ac916"
      },
      {
        "description": "Use when building or modifying interfaces and pages, creating components, implementing layouts, meeting WCAG accessibility requirements, managing state, or when the output needs to look and feel production-quality rather than AI-generated.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $frontend-ui-engineering for this task",
          "display_name": "Frontend UI Engineering",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Builds production-quality, accessible, responsive user-facing UIs"
        },
        "name": "frontend-ui-engineering",
        "plugin_release_skill_id": "pluginrsk_6ab0082ae9e8819194a26295783ffb75"
      },
      {
        "description": "Use when making any code change. Use when committing, branching, resolving conflicts, splitting uncommitted work in a messy working tree into clean atomic commits, opening or reviewing a pull request (PR), pushing to a remote, or when you need to organize work across multiple parallel streams. Use when cutting a release, choosing a semantic version bump, tagging, or writing a changelog.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $git-workflow-and-versioning for this task",
          "display_name": "Git Workflow And Versioning",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "hierarchy",
          "short_description": "Structures git workflow practices"
        },
        "name": "git-workflow-and-versioning",
        "plugin_release_skill_id": "pluginrsk_6ab0082d3c388191b8d61840c2fbcb3a"
      },
      {
        "description": "Use when an idea is vague, alternatives need expanding, assumptions need stress-testing, or the user wants to refine an idea before committing to a plan.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $idea-refine for this task",
          "display_name": "Idea Refine",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "hierarchy",
          "short_description": "Refine and stress-test early ideas"
        },
        "name": "idea-refine",
        "plugin_release_skill_id": "pluginrsk_6ab0082d4f6c81918baabdfae5e71d6b"
      },
      {
        "description": "Use when implementing any feature or change that touches more than one file, or when picking up the next task from a plan. Use when rolling a change out behind a feature flag, when you're about to write a large amount of code at once, or when a task feels too big to land in one step.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $incremental-implementation for this task",
          "display_name": "Incremental Implementation",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "hierarchy",
          "short_description": "Delivers changes incrementally in thin, verifiable slices"
        },
        "name": "incremental-implementation",
        "plugin_release_skill_id": "pluginrsk_6ab0082c495081919a36bd29a646a49b"
      },
      {
        "description": "Use when a request is underspecified, important requirements are ambiguous, or the user asks to be interviewed or grilled before planning or implementation.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $interview-me for this task",
          "display_name": "Interview Me",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "chat",
          "short_description": "Clarify intent through focused interview"
        },
        "name": "interview-me",
        "plugin_release_skill_id": "pluginrsk_6ab0082bede48191ba6894dffbd0fef0"
      },
      {
        "description": "Use when adding logging, metrics, tracing, or alerting. Use when shipping any feature that runs in production and you need evidence it works. Use when production issues are reported but you can't tell what happened from the available data.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $observability-and-instrumentation for this task",
          "display_name": "Observability And Instrumentation",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "radar",
          "short_description": "Instruments code so production behavior is visible and diagnosable"
        },
        "name": "observability-and-instrumentation",
        "plugin_release_skill_id": "pluginrsk_6ab0082b3dd08191989f6e41aa32095f"
      },
      {
        "description": "Use when an application has performance requirements, regressions, slow pages or queries, poor Core Web Vitals, N+1 patterns, or measured bottlenecks that need optimization.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $performance-optimization for this task",
          "display_name": "Performance Optimization",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "chart",
          "short_description": "Diagnose and improve application performance"
        },
        "name": "performance-optimization",
        "plugin_release_skill_id": "pluginrsk_6ab00829dc708191ad20e36723415e62"
      },
      {
        "description": "Use when you have a spec or clear requirements and need to break work into implementable tasks. Use when a task feels too large to start, when you need to estimate scope, or when parallel work is possible.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $planning-and-task-breakdown for this task",
          "display_name": "Planning And Task Breakdown",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "hierarchy",
          "short_description": "Breaks work into ordered tasks"
        },
        "name": "planning-and-task-breakdown",
        "plugin_release_skill_id": "pluginrsk_6ab0082f85b081919cd5c8678ec8cc2b"
      },
      {
        "description": "Use when code handles untrusted input, authentication, sessions, sensitive data, external integrations, dependency vulnerabilities, or needs a security review against common attack classes.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $security-and-hardening for this task",
          "display_name": "Security And Hardening",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "radar",
          "short_description": "Harden code and review security risks"
        },
        "name": "security-and-hardening",
        "plugin_release_skill_id": "pluginrsk_6ab0082e31748191a05dd45a0b3d5a1f"
      },
      {
        "description": "Use when preparing to deploy to production, or when asking what needs to be in place before shipping. Use when you need a pre-launch checklist, when setting up monitoring, when planning a staged rollout, or when you need a rollback strategy.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $shipping-and-launch for this task",
          "display_name": "Shipping And Launch",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "bolt",
          "short_description": "Prepares production launches"
        },
        "name": "shipping-and-launch",
        "plugin_release_skill_id": "pluginrsk_6ab0082eb7b881919bed3dac82dd0b7e"
      },
      {
        "description": "Use when you want to verify an approach against the official docs before implementing it, or when you want authoritative, source-cited code free from outdated patterns. Use when building with any framework or library where correctness matters.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $source-driven-development for this task",
          "display_name": "Source Driven Development",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "search",
          "short_description": "Grounds every implementation decision in official documentation"
        },
        "name": "source-driven-development",
        "plugin_release_skill_id": "pluginrsk_6ab0082e76cc8191aa3feabcd7424f5a"
      },
      {
        "description": "Use when starting a new project, feature, or significant change and no specification exists yet. Use when drafting a PRD or requirements document with objectives and scope, or when requirements are unclear, ambiguous, or only exist as a vague idea. Use when a single requirement spans several independently testable capabilities and needs decomposing into a capability map of modules before specifying.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $spec-driven-development for this task",
          "display_name": "Spec Driven Development",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "hierarchy",
          "short_description": "Creates specs before coding"
        },
        "name": "spec-driven-development",
        "plugin_release_skill_id": "pluginrsk_6ab0082a2204819192f8aaccd309ae43"
      },
      {
        "description": "Use when implementing any logic, fixing any bug, or changing any behavior. Use when you need to prove that code works, when a bug report arrives, or when you're about to modify existing functionality.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $test-driven-development for this task",
          "display_name": "Test Driven Development",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "code",
          "short_description": "Drives development with tests using the red-green-refactor loop"
        },
        "name": "test-driven-development",
        "plugin_release_skill_id": "pluginrsk_6ab0082c28188191b101c75c45cfda8b"
      },
      {
        "description": "Use when starting a session, or when you need to decide which skill or workflow applies to the piece of work at hand. This is the meta-skill that governs how all other skills are discovered and invoked.",
        "interface": {
          "brand_color": null,
          "default_prompt": "Use $using-agent-skills for this task",
          "display_name": "Using Agent Skills",
          "icon_large_url": null,
          "icon_small_url": null,
          "iconography": "hierarchy",
          "short_description": "Discovers and invokes agent skills"
        },
        "name": "using-agent-skills",
        "plugin_release_skill_id": "pluginrsk_6ab0082d0958819191fa22bbe91e72f8"
      }
    ],
    "version": "0.6.10"
  },
  "scope": "GLOBAL",
  "share_url": "https://chatgpt.com/plugins/plugins_6ab00825b73c8191b684c13fdd7a0280?open_in_app",
  "status": "ENABLED"
}

SHA-256 of public snapshot: a6478a13b6c56b424bd87c6e2eb5932182b6a4b6170742bec017d992c0b114d7