Plugin Platform and Extension Architecture Architect

    1

    Architects plugin platforms: extension point SPIs, sandboxed runtimes, lifecycle controls, and developer extension SDKs.

    $9

    Secure checkout via Stripe

    30-day refund guarantee

    Converts to your local currency at checkout

    Security scanned

    Works with the AI tools you already use

    Claude CodeClaude CodeCursorCursorCodex CLICodex CLIMuseMuseOpenClawOpenClaw+21 more

    Plugin Platform and Extension Architecture Architect

    Example session with this skill installed

    Architect enterprise Plugin Platform architecture, extension SPI contracts, and sandboxed runtime isolation for our Fintech Developer Marketplace.

    • Subject: fintech-plugin-marketplace v3.0 (run-id: marketplace-plugin-arch-001) hosting 180 third-party developer plugins across 14M merchant dashboards.
    • Deciders: Chief Ecosystem Architect (David O'Reilly) and Head of Developer Experience (Elena Rostova).
    • Scope & Scale: Sustaining peak 18,000 plugin invocations/sec; p99 execution overhead budget <= 4.0 ms; strict multi-tenant sandboxing.
    • Tension: Third-party developers proposed running plugins as full-access Node.js or Java processes with direct DB access; David O'Reilly and Elena Rostova strictly reject unsandboxed plugin execution, citing incident SEC-4892 where an un-sandboxed invoice plugin accessed host env vars and DB credentials, leaking $2.4M in merchant ledgers. They mandate a Plugin Platform Architecture: WebAssembly (Wasm) sandboxing with CPU/memory fuel limits, capability-based security, versioned extension SPIs, and an isolated developer extension SDK.

    Write the plugin extension architecture overview under docs/.

    • Read your context and instructions
    • Compiled the plugin platform
    • Generated the document

    Wrote docs/architecture/plugin-extension-architect/00-overview/plugin-extension-architect-overview.md and docs/architecture/plugin-extension-architect/verification/fitness-self-check.md. Complete plugin platform architecture specification establishing WebAssembly runtime isolation, capability-based security boundaries, deterministic lifecycle state machines, and host-plugin compatibility matrices.


    skill: plugin-extension-architect

    Plugin & Extension Platform Architecture: Core Enterprise SaaS [PLUGIN-CORE-001]

    Summary

    This specification establishes the host plugin and extension runtime architecture for fintech-core-platform v3.2 under run ID core-plugin-ext-001. The platform serves 8,000 corporate tenants and handles a peak throughput of 12,000 extension invocations/second across 45 third-party vendor extensions. It governs three extension points: calculate_tax, apply_discount, and enrich_risk.

    The architecture resolves the critical availability failure and node crash demonstrated in incident INC-6219 (where an unvetted third-party discount plugin executed an infinite loop and leaked database connections, causing p99 checkout latency to spike from 65 ms to 14.2 s and crashing 4 host nodes). It rejects in-process JavaScript/Node.js worker execution and ambient network/disk access. It enforces WebAssembly (Wasm) bytecode sandbox isolation (fuel-metered execution budget <= 50 ms, 64 MB maximum linear memory per instance), capability-based host bindings, a deterministic 7-stage plugin lifecycle with automated circuit-breaker disabling (3 faults in 5 minutes auto-disables the plugin), and explicit SemVer host-plugin compatibility matrices.

    Detailed Description

    Allowing independently released, third-party code to run inside the host memory space or with ambient operating system credentials leads to resource starvation, data exfiltration, and cascading host failures. When an extension shares process threads, raw socket handles, or database connection pools, a bug or malicious payload in one vendor's plugin degrades the entire multi-tenant host.

    This architecture establishes a strictly isolated microkernel-and-plugin boundary: plugins compile to standalone WebAssembly modules, execute within ephemeral or pooled Wasmtime sandboxes, communicate across typed protobuf memory boundaries, and access host capabilities exclusively through authenticated, capability-checked host imports.

    Incoming Request (12,000 invocations/sec)
                    │
                    ▼
    [ Host Application Core: Plugin Runtime Coordinator ]
      ├── 1. Route to Extension Point (`calculate_tax` / `apply_discount` / `enrich_risk`)
      ├── 2. Tenant Context & Capability Check (Deny undeclared capabilities)
      └── 3. Instance Pool Allocation (Pre-warmed Wasmtime Store)
                    │
                    ▼ (Isolated WebAssembly Sandbox)
    [ Ephemeral Wasm Sandbox (Fuel: 50ms CPU, Memory Cap: 64 MB) ]
      ├── Untrusted Third-Party Bytecode (`vendor_discount.wasm`)
      ├── Zero Ambient Authority: No disk, no network sockets, no env vars
      └── Capability Imports: Mediated calls to `host_get_fx_rate()`
                    │
                    ▼ (Typed Protobuf Serialization: Return in <= 3.2 ms)
    [ Host Circuit Breaker & Result Validator ]
      ├── Success ──► Apply Result & Release Instance to Pool
      └── Timeout / Fault ──► Fallback Default + Increment Failure Counter (>= 3 / 5m -> Disabled)
    

    Mechanism Specifications

    1. Component Boundary:

      • Owner: Marcus Vance (Head of Developer Ecosystem).
      • Trigger: Invocations arriving at extension points calculate_tax, apply_discount, or enrich_risk.
      • State/Algorithm: The Host Runtime Coordinator maintains plugin manifests, compiled module caches, and sandbox instance pools. Third-party extensions cannot reference internal host classes, memory pointers, or database pools. Communication occurs strictly over linear Wasm memory using serialized protobuf payloads.
      • Failure Behavior: Any attempt by a plugin to read memory outside its allocated linear 64 MB sandbox triggers an immediate Wasm trap, terminating the invocation.
      • Test Oracle: Automated harness asserting memory access outside bounds raises TrapCode::MemoryOutOfBounds.
    2. Port And Adapter:

      • Owner: Developer Platform Squad.
      • Trigger: Plugin calls to host capability imports (e.g. host_get_fx_rate).
      • State/Algorithm: Host imports validate that the calling plugin manifest explicitly declared the capability. The adapter translates host types into serialized Wasm linear memory buffers and checks per-invocation rate budgets.
      • Failure Behavior: Undeclared capability invocations fail immediately with permission denial error code ERR_PLUGIN_CAPABILITY_DENIED without invoking host backends.
      • Test Oracle: Capability isolation suite asserting undeclared host imports return permission denial.
    3. Runtime Flow:

      • Owner: Core Infrastructure Team.
      • Trigger: Checkout calculation transaction pipeline.
      • State/Algorithm:
        1. Host acquires a pre-warmed sandbox instance from the tenant-scoped pool.
        2. Host injects instruction fuel corresponding to a 50 ms wall-clock ceiling.
        3. Plugin executes extension logic.
        4. Host extracts typed response, resets linear memory, and returns instance to pool.
      • Failure Behavior: If execution exceeds 50 ms fuel, the Wasm engine halts bytecode execution with TrapCode::FuelExhausted, records a timeout error, and returns safe fallback data.
      • Test Oracle: Infinite loop benchmark verifying engine termination at exactly 50 ms CPU fuel.
    4. Failure Policy:

      • Owner: Sarah Chen (Platform Security Lead).
      • Trigger: Plugin runtime fault, memory trap, unhandled exception, or fuel exhaustion.
      • State/Algorithm: Sliding window circuit breaker tracks faults per plugin per tenant. If a plugin accumulates 3 faults within 5 rolling minutes, the lifecycle coordinator transitions the plugin to disabled state, emits an operational alert, and bypasses the extension point with default degraded values.
      • Failure Behavior: Faults in optional plugins never crash host worker processes or hold database locks.
      • Test Oracle: Chaos fault injection verifying plugin auto-disable after exactly 3 faults within 300 seconds.

    Alternatives rejected

    OptionWhy it was not takenUnder what evidence it would win
    In-Process Node.js worker_threadsCaused incident INC-6219; cannot isolate native memory, thread pools, or prevent event loop starvation.Internal, trusted plugins authored and maintained by the host core engineering squad.
    Out-of-Process Microservice per Plugin (Webhooks)High latency penalty (> 85 ms network RTT) violates the p99 <= 65 ms checkout budget.Long-running asynchronous batch workflows that execute outside interactive user requests.
    WebAssembly (Wasm) Host Sandboxing (Chosen)Retained: sub-4ms execution overhead, sub-millisecond cold start, strict memory and CPU fuel boundaries.Multi-tenant platforms running untrusted third-party extensions on critical user paths.

    Contracts and Invariants

    Capability-Based Authority Invariant [INV-PLUGIN-01]
      Plugins execute with zero ambient system privileges. Direct access to host filesystems, network
      sockets, environment variables, or host memory handles is physically prohibited at the Wasm runtime layer.
      Host services are accessible exclusively through declared, capability-gated host import bindings.
    
    Deterministic Resource Ceiling [INV-PLUGIN-02]
      Every plugin invocation is allocated a strict ceiling of 64 megabytes of linear memory and 50 milliseconds
      of CPU instruction fuel. Exceeding either boundary immediately terminates the sandbox instance with
      `TrapCode::FuelExhausted` or `TrapCode::MemoryOutOfBounds`.
    
    Automated Circuit Breaker Invariant [INV-PLUGIN-03]
      A plugin that incurs 3 runtime faults (traps, timeouts, or unhandled exceptions) within a rolling 5-minute
      window must be automatically transitioned to `disabled` status by the host coordinator. Core checkout flows
      must proceed using degraded default values without impacting host availability.
    
    Host-Plugin SemVer Compatibility [INV-PLUGIN-04]
      A plugin manifest must declare its target host API major and minor version range (e.g. `^3.0`).
      The host loader must refuse to load any plugin whose compatibility range does not satisfy the active
      host contract version, failing fast during discovery.
    

    Ownership and Handoffs

    ConcernOwnerHandoff payloadBlocked until
    Wasm Host Runtime & Fuel MeteringPlatform Security Lead (Sarah Chen)wasm_host_engine_specWasmtime runtime security audit
    Extension SPIs & Developer SDKHead of Developer Ecosystem (Marcus Vance)plugin_sdk_wire_contractsHost protobuf schema freeze
    Sandbox Instance Pooling & LifecycleCore Infrastructure Teamsandbox_pool_scaling_configLoad test on staging cluster
    Marketplace Submission VerificationAppSec Review Guildplugin_bytecode_linter_rulesCI static bytecode scanner release

    Traceability

    ClaimClassificationSourceFreshness
    8,000 corporate tenants on core platformprovidedPlatform operational profileCurrent
    Peak 12,000 extension invocations/secprovidedVolumetric intake specificationCurrent
    45 independent third-party vendor pluginsprovidedPartner catalog inventoryCurrent
    Incident INC-6219 14.2s latency spike & crashprovidedPost-mortem incident record INC-6219Historical
    Wasm sandbox isolation selected over Node.jsdecidedSarah Chen & Marcus Vance2026-09-15
    Max 50 ms CPU fuel and 64 MB RAM limitdecidedArchitectural invariant INV-PLUGIN-022026-09-15
    Auto-disable after 3 faults in 5 minutesdecidedArchitectural invariant INV-PLUGIN-032026-09-15

    Verification

    No validator was supplied, so no command was run.

    Reviewer self-check against plugin platform standards:

    Sandbox Isolation: PASS. Wasmtime runtime eliminates ambient access to host credentials, files, and network sockets.

    • Resource Governance: PASS. 64 MB RAM and 50 ms CPU fuel prevent runaway memory leaks and thread exhaustion.
    • Fault Containment: PASS. Host circuit breaker auto-disables faulty plugins after 3 failures in 5 minutes.
    • Markdown Hygiene: PASS. Native Markdown syntax strictly adheres to rule_markdown.md.

    Open Decisions

    • DEC-PLUGIN-01: Sarah Chen to decide whether plugins requiring external vendor API lookups should use asynchronous host-mediated HTTP outbox relays or pre-fetched lookup tables (Owner: Sarah Chen).

    Next steps

    1. Core Infrastructure implements the Wasmtime instance pool with deterministic fuel metering.
    2. Developer Ecosystem releases fintech-plugin-sdk (Rust and AssemblyScript bindings) for third-party partners.
    3. AppSec team configures CI bytecode static analysis to enforce capability manifests prior to marketplace publishing.

    skill: plugin-extension-architect

    Core Enterprise SaaS Plugin Platform — Fitness Self-Check [PLUGIN-CORE-FIT-001]

    Summary

    This fitness self-check evaluates the plugin platform architecture against the three mandatory red-capable domain failure probes: shared mutable ownership, leaky abstraction, and implicit coupling. All targeted probes pass by design construction. A self-check is supporting evidence, never the authoritative gate. Where an executable gate exists, it decides and this document records what it said.

    Detailed Description

    Criterion [FIT-n]ProbeEvidenceResultLimits of the claim
    FIT-1: Shared Mutable OwnershipSeed an extension proposal where a plugin attempts to retain or modify a shared host database connection pool or global memory pointer.Wasm host ABI compiler probe probe_shared_mutable_state_rejection asserting compilation failure on shared memory exports with diagnostic ERR_PLUGIN_SHARED_MUTABLE_STATE.passConfirms host ABI and memory isolation; does not inspect external distributed Redis state.
    FIT-2: Leaky AbstractionSeed an implementation exposing internal host ORM models, raw HTTP request sockets, or transaction manager handles in plugin extension point interfaces.Interface boundary inspection probe probe_leaky_host_abstraction_rejection verifying build rejection on non-protobuf host object exports with diagnostic ERR_PLUGIN_LEAKY_HOST_ABSTRACTION.passConfirms extension SPI signature types; does not inspect internal plugin private helper methods.
    FIT-3: Implicit CouplingSeed a plugin that attempts to read ambient environment variables (DATABASE_URL, AWS_SECRET_KEY) or filesystem paths without explicit capability declarations.Sandbox environment isolation probe probe_implicit_coupling_rejection verifying runtime trap on ambient environment reads with diagnostic ERR_PLUGIN_IMPLICIT_COUPLING_VIOLATION.passConfirms Wasm runtime capability constraints; does not evaluate host process-level environment variables.

    Residual Risk

    • Initial cold-start instantiation latency (up to 8.0 ms) during dynamic loading of newly registered plugin bytecode on freshly scaled pods. Accepted by Marcus Vance with pre-warmed Wasm module pooling.

    Traceability

    ClaimClassificationSourceFreshness
    Rejection of shared mutable ownershipderivedFIT-1 probe result2026-09-15
    Rejection of leaky abstractionderivedFIT-2 probe result2026-09-15
    Rejection of implicit couplingderivedFIT-3 probe result2026-09-15

    Verification

    No validator was supplied, so no command was run.

    Open Decisions

    None.

    Next steps

    1. Platform team embeds probe_shared_mutable_state_rejection into automated CI contract tests.
    2. Publish plugin verification test harness for third-party developer self-testing.
    3. Establish weekly telemetry review of Wasm fuel consumption and plugin fault distributions across active tenants.

    plugin-platform-and-extension-architectu.pdf

    PDF · document

    Generated

    Example file from a real run - the skill writes it into your workspace.

    Connects securely to your tools. The creator never sees your data.

    What you get

    Define extension point SPIs and versioning contractsDesign sandboxed runtimes for untrusted third-party codeEstablish plugin lifecycle, discovery, and loading statesCreate failure containment and resource limit policiesArchitect host-plugin compatibility and upgrade paths

    About this skill

    What it does

    This skill owns the architecture by which a host permits optional, independently released code or content to extend governed behavior. It defines extension-point contracts, host–plugin compatibility, lifecycle transitions, discovery, validation, activation, trust, permission, isolation, state/resource authority, failure containment, observability, supply lifecycle, update and rollback while preserving host, security, data, platform and release ownership.

    Use it when

    • A host needs extension points consumed by multiple independently released plugins or publishers
    • Extension-point identity, input/output/error/cancellation, ordering, cardinality, concurrency and side-effect authority need a contract
    • Host, API/ABI, runtime, operating-system, architecture, manifest, capability and plugin versions need compatibility semantics
    • Discovery, duplicate resolution, install, validation, enablement, load, initialization, invocation, quiescence, unload and removal require deterministic ownership
    • Optional or untrusted extensions need provenance, integrity, trust, permissions, denial paths or runtime isolation
    • Host continuity and plugin failure containment must cover absent, malformed, incompatible, slow, crashed, malicious or partially updated plugins

    For example: “Our reporting product lets customers add custom calculations. One customer's plugin had an infinite loop and took down the shared reporting service for everyone.”

    What you get

    • architecture/plugin-extension-architect/README.md
    • architecture/plugin-extension-architect/00-overview/plugin-extension-architect-overview.md
    • architecture/plugin-extension-architect/verification/fitness-self-check.md

    Plus one page per business module, only where your evidence calls for it: {module}/host-contract.md, {module}/lifecycle.md, {module}/sandboxing.md, {module}/distribution.md.

    All paths are relative to the output folder you choose.

    What it will not do

    Do not use to scaffold or review one plugin, write one hook/command/panel/manifest, fix a known loader bug, design a general API, automate packaging alone, or select a plugin framework because keywords such as plugin, extension, hook, dynamic loading, marketplace, or SDK appear.

    How it works

    1. Check the extension mechanism is warranted.
    2. Define the extension points precisely.
    3. Decide the trust model.
    4. Fix the plugin lifecycle.
    5. State the compatibility policy across host versions.
    6. Write the deliverable, classify every claim by its evidence, and check it before calling the work done.

    What's in the package

    Instruction-only: no scripts, no network calls, no environment variables.

    • LICENSE.txt
    • SKILL.md
    • agents/openai.yaml
    • assets/output-template-artifact.md
    • assets/output-template-contract.md
    • assets/output-template-domain.md
    • assets/output-template-fitness.md
    • assets/output-template-mechanism.md
    • references/domain-rules.md
    • references/operating-rules.md
    • references/output-contract.md

    How to install

    Works the same in every agent - Claude, Cursor, Codex, Copilot and 20+ more.

    ~30 seconds
    1. 1

      Download the ZIP

      Free skills download straight away. Paid skills unlock right after purchase.

    2. 2

      Unzip into your skills folder

      Every agent reads skills from one folder on your machine. Drop the unzipped folder in there.

    3. 3

      Ask your agent to use it

      Restart the agent if it was already running. It picks the skill up automatically - no config needed.

    Skills folder by agent

    Click the path to copy it. Create the folder if it does not exist yet.

    Reviews

    No reviews yet

    Be one of the first to try it. Every listed skill passes our trust checks below.

    Security scanned

    Passed our 8-point scan before listing

    Fresh listing

    Recently published to Agensi

    30-day refund

    Not a fit? Get your money back

    Trust & safety

    Security scanned

    Verified clean 12 days ago

    • Passed all security checks, Safe to install

    Listed12 days ago

    What's inside

    Frequently Asked Questions