iii-architecture-patterns
Use when composing iii primitives into backend architectures: durable workflows, reactive backends, agentic pipelines, event-driven CQRS, effect pipelines, and trigger-transform-action automation.
By iii-hq · 2,271 installs
npx skills add iii-hq/iii --skill iii-architecture-patterns
Source repository · Upstream listing
Architecture Patterns
Use this skill when the task is larger than one function or trigger. Pick the pattern from the
requirement, then implement it with Function , Trigger , Worker , state, queues, streams, and
pub/sub.
Pattern Map
Requirement Pattern iii shape
Sequential work with retries, DLQ, step tracking Durable workflow Functions chained through named queues, progress in state
Keep views, metrics, cache, or clients in sync Reactive backend State triggers plus stream/pubsub side effects
Specialized AI agents hand work to each other Agentic backend One function per agent, queue handoffs, shared state
Commands publish events and projections update independently Event driven CQRS Command functions, event log in state, subscribe triggers
Pure, traceable composition Effect pipeline Small functions composed synchronously with trigger()
Webhook/cron automation chains Low code automation Trigger, transform, action nodes chained by enqueue
Durable Workflow
Use named queues when steps need different retry, FIFO, or concurrency policy.
TypeScript
Python
Rust
Reactive Backend
Use state triggers when the requirement says "after create/update, do this", "avoid polling", or
"push live updates".
Agentic Backend
Model each agent as a function with one responsibility. Store shared context in state and hand off
work through named queues.
Event Driven CQRS
Commands validate and publish domain events. Projections subscribe independently and write
query optimized state.
Selection Rules
Use sync composition for short effect pipelines where the caller needs the final result.
Use enqueue for unreliable, slow, or must complete steps.
Use pub/sub for independent fan out where each subscriber can tolerate event style delivery.
Use state triggers for derived views and side effects that should run automatically after writes.
Use cron triggers for scheduled maintenance and periodic starts.
Keep each function small enough to test independently.
When to Use
Use this skill for complete backend patterns: workflows, agentic systems, reactive apps, CQRS,
effect pipelines, and automation chains.
Use this when the request describes product behavior rather than a single SDK API call.
Boundaries
For exact trigger config, function registration syntax, custom triggers, channels, and
HTTP invoked functions, use iii core primitives .
For queue retry, FIFO, adapter, port, and worker manager config, use iii engine config .
For package specific SDK syntax, use iii sdk reference .
Worker backed capability details live with the worker docs, not as top level iii skills.