{"name":"openwop-reference-host","description":"OpenWOP reference workflow-engine host exposing its installed manifest agents over A2A (RFC 0076).","url":"https://app.openwop.dev/v1/host/openwop-app/a2a","version":"1.0.0","protocolVersion":"0.3","capabilities":{"streaming":false,"pushNotifications":true},"defaultInputModes":["text/plain"],"defaultOutputModes":["text/plain"],"skills":[{"id":"core.openwop.agent-examples.chat","name":"Chat Agent","description":"Multi-turn conversational agent. Smoke fixture for `memoryShape.conversation: true` — exercises per-run dialogue memory binding through the conversation channel (RFC 0005). No tools, no long-term memory.","tags":["general"]},{"id":"core.openwop.agent-examples.echo-agent","name":"Echo Agent","description":"Repeats the user's most recent message back verbatim. Smoke fixture for the agent-dispatch lifecycle.","tags":["general"]},{"id":"core.openwop.agent-examples.structured-fixture","name":"Structured Fixture Agent","description":"Schema-validated extraction smoke fixture. Exercises `handoff.taskSchemaRef` + `handoff.returnSchemaRef` — both tarball-relative paths to JSON Schema 2020-12 documents. Hosts validate inbound payloads against `taskSchemaRef` before dispatch and outbound results against `returnSchemaRef` before persistence.","tags":["classification"]},{"id":"core.openwop.agent-examples.summarizer","name":"Summarizer Agent","description":"Produces a 2-3 sentence summary of arbitrary input text. Demonstrates the `systemPromptRef` path — the prompt body lives in `prompts/summarizer.md` rather than inlined in the manifest.","tags":["writing"]},{"id":"core.openwop.agent-examples.tool-caller","name":"Tool Caller Agent","description":"Non-empty toolAllowlist smoke fixture. Exercises the runtime's tool-allowlist enforcement boundary established by safety-fix OPENWOP-AUDIT-2026-003 (`SECURITY/invariants.yaml#agents-run-no-raw-handler`). Requires the host to advertise `host.agentRuntime` per RFC 0007.","tags":["reasoning"]},{"id":"core.openwop.agents.api-designer.default","name":"API Designer Agent","description":"Authors OpenAPI 3.1 / AsyncAPI 3.0 / JSON Schema 2020-12 documents from briefs. Self-validates via openwop:core.openwop.data.json-schema-validate and returns the spec for the enclosing workflow to persist.","tags":["coding"]},{"id":"core.openwop.agents.audit-summarizer.default","name":"Audit Summarizer Agent","description":"Compresses raw audit logs (access logs, change logs, decision logs) into structured executive summaries. Highlights anomalies (unusual access patterns, configuration drift, policy-violating actions). Tracks pattern shifts vs prior periods via long-term memory.","tags":["writing"]},{"id":"core.openwop.agents.classifier.default","name":"Classifier Agent","description":"Single-shot text classifier. Caller supplies labels (with descriptions) + multi-label flag; agent returns label(s) with per-label confidence + brief rationale. No tools, no memory.","tags":["classification"]},{"id":"core.openwop.agents.code-reviewer.default","name":"Code Reviewer Agent","description":"Reviews a diff or set of files for correctness, security, style, and design issues. Cites file:line for every finding. Severity-classifies findings (blocking / important / nit). Reasons over the diff and files supplied in the task payload; may fetch external API docs via openwop:core.openwop.http.fetch.","tags":["coding"]},{"id":"core.openwop.agents.deep-research.default","name":"Deep Research Agent","description":"Plans an investigation, decomposes into sub-questions, retrieves from RAG + web search, evaluates source quality, writes a structured findings report. Persists discovered facts to long-term memory for re-use across runs.","tags":["research"]},{"id":"core.openwop.agents.devops-crew.executor","name":"DevOps Executor","description":"Executes one runbook step at a time. Performs http step actions as specified by the planner; refuses steps whose action tool is outside its allowlist. Halts on first failure or unexpected state.","tags":["coding"]},{"id":"core.openwop.agents.devops-crew.planner","name":"DevOps Planner","description":"Reads a runbook or operational goal (supplied in the task payload), decomposes into safe ordered steps (with pre-checks, action, post-checks), flags steps requiring human approval, dispatches executor. Reasons over the provided text; holds no conversational tools.","tags":["reasoning"]},{"id":"core.openwop.agents.devops-crew.verifier","name":"DevOps Verifier","description":"Runs read-only http checks to confirm that the desired post-state holds after executor steps. Returns pass/fail per check with evidence.","tags":["reasoning"]},{"id":"core.openwop.agents.doc-writer.default","name":"Documentation Writer Agent","description":"Produces technical documentation in one of several supported shapes (readme-section, api-reference, architecture-note, changelog, runbook). Grounds claims via openwop:core.rag.retriever-basic and returns the document for the enclosing workflow to persist.","tags":["writing"]},{"id":"core.openwop.agents.document-author.default","name":"Document Author Agent","description":"Authors PDF / Word / Excel / PowerPoint documents from natural-language briefs. Plans structure and writes the content; the enclosing workflow's core.files PDF/archive nodes materialize the deliverable from what it returns. Mirrors Anthropic's top official Office-document skills (PowerPoint/Excel/Word/PDF).","tags":["writing"]},{"id":"core.openwop.agents.expense-categorizer.default","name":"Expense Categorizer Agent","description":"Classifies expenses against a policy-defined chart of accounts. Flags policy violations (out-of-policy categories, amount limits, missing receipt requirements). Returns category + reasoning.","tags":["classification"]},{"id":"core.openwop.agents.frontend-designer.default","name":"Frontend Designer Agent","description":"Produces design-system-aware component specs, page layouts, and mocks. Takes a brief + optional design-system source (supplied inline or retrieved via openwop:core.rag.retriever-basic); emits component contracts (props + variants + states), layout JSON, and React/HTML skeleton code. Mirrors Anthropic's `frontend-design` skill.","tags":["writing"]},{"id":"core.openwop.agents.git-author.default","name":"Git Author Agent","description":"Drafts commit messages, PR titles + bodies, release notes, and changelog entries from a diff. Conventional-Commits-aware. Optionally fetches the project's recent history via openwop:core.http.fetch (GitHub API) to match house style.","tags":["writing"]},{"id":"core.openwop.agents.invoice-extractor.default","name":"Invoice Extractor Agent","description":"Extracts structured fields (vendor, line items, totals, tax, payment terms) from invoice PDFs or text. Returns confidence per field and flags anomalies (math doesn't add up, missing fields, suspicious vendor patterns).","tags":["classification"]},{"id":"core.openwop.agents.lead-concierge.default","name":"Lead Concierge Agent","description":"A value-first website concierge for the public anonymous chat widget: helps visitors from grounded knowledge, discloses it is AI, offers a human follow-up only after delivering value, and captures a lead (email-only, consented) via crm.lead.capture. Makes no offers/prices/commitments. Grant it on a widget's anonToolGrant (crm.lead.capture as a hitl write).","tags":["reasoning"]},{"id":"core.openwop.agents.long-doc-summarizer.default","name":"Long Document Summarizer Agent","description":"Map-reduce summarizer. Splits input into chunks via openwop:core.flow.split-in-batches, summarizes each chunk independently, then synthesizes a final summary. Handles inputs beyond a single LLM context window.","tags":["writing"]},{"id":"core.openwop.agents.policy-reviewer.default","name":"Policy Reviewer Agent","description":"Reviews content against a caller-supplied set of policy rules. Returns per-rule decisions (pass / fail / borderline / N/A) with rationale + quoted evidence from the content. Calibrated for compliance, ad-policy review, content moderation, code-of-conduct checks.","tags":["reasoning"]},{"id":"core.openwop.agents.react.default","name":"ReAct Agent","description":"Iterative Reason+Act loop. Thinks one step, takes one action (tool call or final answer), observes result, repeats. Default allowlist permits openwop:core.openwop.http.fetch — workflows override via the dispatch envelope.","tags":["reasoning"]},{"id":"core.openwop.agents.research-crew.critic","name":"Research Critic","description":"Reviews retrieved evidence for source quality, contradictions, gaps. Flags weak claims and demands re-retrieval before the writer drafts.","tags":["reasoning"]},{"id":"core.openwop.agents.research-crew.planner","name":"Research Planner","description":"Decomposes the research goal into a sub-question DAG, assigns each sub-question to the retriever and synthesizes a research plan for the critic + writer to follow.","tags":["reasoning"]},{"id":"core.openwop.agents.research-crew.retriever","name":"Research Retriever","description":"Executes targeted retrievals per sub-question — RAG + web fetch + web research. Returns evidence with source + relevance + retrieval timestamp.","tags":["research"]},{"id":"core.openwop.agents.research-crew.writer","name":"Research Writer","description":"Synthesizes critic-approved evidence into a structured findings report with inline citations + open-questions list.","tags":["writing"]},{"id":"core.openwop.agents.sales-coach.default","name":"Sales Coach Agent","description":"Analyzes call transcripts (or call summaries) for coaching moments — talk ratio, discovery quality, objection handling, next-step clarity. Recommends concrete next actions. Tracks per-rep development arc in long-term memory.","tags":["reasoning"]},{"id":"core.openwop.agents.sdr.default","name":"Sales Development Rep Agent","description":"Researches a prospect, drafts personalized outreach across channels (email / LinkedIn / SMS), and writes back prospect-history to long-term memory for follow-up sequences. Per-channel templates honor character limits + tone conventions.","tags":["writing"]},{"id":"core.openwop.agents.structured-extractor.default","name":"Structured Extractor Agent","description":"Caller supplies a JSON Schema describing the desired output shape; agent extracts matching data from the input. Validates output against the schema and auto-fixes on validation failure (up to maxFixAttempts). Production-grade — typed and schema-validated end-to-end.","tags":["classification"]},{"id":"core.openwop.agents.supervisor.default","name":"Supervisor Agent","description":"Receives a goal, decomposes it into subtasks, picks the right subagent per subtask, dispatches via RFC 0007, aggregates results. Decides when the goal is complete and returns a synthesized final answer.","tags":["reasoning"]},{"id":"core.openwop.agents.support-crew.escalator","name":"Support Escalator","description":"Builds the escalation packet — context summary + classification + suggested specialist — when the Resolver returns escalation. Persists escalation patterns to long-term memory for staffing analytics.","tags":["writing"]},{"id":"core.openwop.agents.support-crew.resolver","name":"Support Resolver (Crew)","description":"Identical contract to core.openwop.agents.support-resolver. Bundled here so the crew can dispatch end-to-end without external pack lookups.","tags":["writing"]},{"id":"core.openwop.agents.support-crew.triage","name":"Support Triage (Crew)","description":"Identical contract to core.openwop.agents.support-triage. Bundled here for atomic crew dispatch.","tags":["classification"]},{"id":"core.openwop.agents.support-resolver.default","name":"Support Resolver Agent","description":"Resolves a triaged support ticket by retrieving from the knowledge base, drafting a grounded answer with citations, and escalating to a human when confidence falls below threshold. Persists resolution patterns to long-term memory.","tags":["writing"]},{"id":"core.openwop.agents.support-triage.default","name":"Support Triage Agent","description":"Reads a support ticket (subject + body + optional customer metadata) and emits a routing decision: queue, severity, customer-segment-aware priority, suggested skill-tags, and a short rationale.","tags":["classification"]},{"id":"core.openwop.agents.test-author.default","name":"Test Author Agent","description":"Generates unit, integration, or e2e tests from source code or specs. Framework-aware (Jest/Vitest/Pytest/Go test/Playwright). Matches house style from a neighbor test supplied inline; returns the test file for the enclosing workflow to persist.","tags":["coding"]},{"id":"core.openwop.skills-bridge.adapter","name":"Skills Adapter Agent","description":"Adapter persona that, when given a SKILL.md-style skill descriptor + per-run inputs, executes the skill the way an Anthropic or OpenAI runtime would — but inside an openwop dispatch. Useful for skill-format portability without re-authoring as native openwop agent packs.","tags":["general"]},{"id":"feature.accessibility.agents.accessibility-reviewer","name":"Accessibility Reviewer","description":"Reviews authored content (pages, screens, documents) for accessibility problems — missing image alt text, skipped heading levels, non-descriptive link text, low color contrast — and proposes AI alt text for images. Recommends fixes; the human applies them.","tags":["research"]},{"id":"feature.agent-author.agents.agent-author","name":"Agent Author","description":"Turns a natural-language description into a roster agent: reads the closed-world catalog (legal agent ids, workflow ids, existing personas), drafts a roster entry, validates it, and creates it through the same path the manual wizard uses — grounded via feature.agent-author.nodes over ctx.features['agent-author']. Never invents ids; the created agent lands DISABLED for the human to review and enable in its workspace (ADR 0514).","tags":["research"]},{"id":"feature.analytics.agents.insights","name":"Analytics Insights","description":"Summarizes an org's analytics — traffic, top paths, UTM sources, conversion volume — into a concise insight report, grounded via the openwop:analytics.query chat tool. Read-only: it reports, it never mutates.","tags":["research"]},{"id":"feature.app-builder.agents.default","name":"App Architect","description":"Turns a product idea into a structured multi-screen app design (screens, components, connectors) persisted as an editable App Builder canvas. Tool-first (ADR 0358): catalog → compose → render, get-design before updates.","tags":["general"]},{"id":"feature.assistant.agents.chief-of-staff","name":"Chief of Staff","description":"Orchestrates the assistant's perception/action loops over the memory graph: grounds in the workspace state + knowledge base, routes extraction + board population + briefings, and surfaces only what needs the principal's judgment. Delegates to the extractor / drafter. Draft-only — never sends without approval.","tags":["reasoning"]},{"id":"feature.assistant.agents.drafter","name":"Reply Drafter","description":"Drafts outbound replies in the principal's voice and enqueues them as pending actions for one-tap approval (never sends). Tool-allowlisted to enqueue-action only — the send path is gated behind the principal's approval + the Connections write scopes.","tags":["writing"]},{"id":"feature.assistant.agents.extractor","name":"Commitment Extractor","description":"Reads a source (email/doc/transcript via the knowledge base) and extracts commitments + decisions with owner, due date, and a confidence, then upserts them into the memory graph. Read + graph-write only; no outbound I/O.","tags":["extraction"]},{"id":"feature.brand.agents.brand-steward","name":"Brand Steward","description":"Teaches and enforces a workspace's brand — voice, formality, approved + banned phrases, per-channel rules — and scores content for compliance, grounded via the openwop:brand.* chat tools. Recommends; the human decides.","tags":["research"]},{"id":"feature.cad.agents.default","name":"CAD Modeler","description":"Turns a request into a parametric 3D model (primitive solids) rendered live in the artifact workbench. Uses openwop:cad.render (and openwop:cad.get-design to read before revising). Mesh interchange, BOM, dimensions, sketch-solving and materials are available in the full-screen editor.","tags":["general"]},{"id":"feature.campaign-brief.agents.brief-strategist","name":"Campaign Brief Strategist","description":"Reads and validates a campaign brief and ignites its messaging kernel — the shared strategic foundation every channel echoes — grounded in the knowledge base and brand voice, plus the market-intel research pipeline, via the openwop:campaign-brief.* chat tools. Recommends; the human approves the kernel.","tags":["research"]},{"id":"feature.campaign-channels.agents.channel-generator","name":"Channel Generator","description":"Generates a single channel deliverable (landing page, ad variants, email sequence, creative briefs, or social posts) from a brief's messaging kernel — grounded in the KB and brand voice — and runs a content-quality check, via feature.campaign-channels.nodes. For creative_briefs it can OPTIONALLY render concept images (render-concepts, ADR 0229 — honest-off when no image provider is wired; budget-capped by the host). The human approves each draft.","tags":["research"]},{"id":"feature.campaign-intel.agents.intelligence-analyst","name":"Campaign Intelligence Analyst","description":"Answers data-backed budget + performance questions over your campaign data — budget reallocation toward higher ROAS, creative-fatigue detection, outcome forecasts, goal-based budget planning, budget-pacing bands, and attribution — reading the performance store through org-scoped tools. Recommends; the human decides.","tags":["research"]},{"id":"feature.campaign-orchestration.agents.campaign-strategist","name":"Campaign Strategist","description":"The chat-driven Campaign Studio orchestrator — checks workspace setup readiness, validates the brief, generates + approves the messaging kernel, generates each enabled channel, checks cross-asset consistency, and finalizes the marketing campaign. The human approves the kernel and each channel.","tags":["research"]},{"id":"feature.campaign-studio.agents.default","name":"Campaign Strategist","description":"Turns a marketing goal into a structured multi-channel campaign (channels, funnel, content assets) rendered live in the artifact workbench. Uses openwop:campaign-studio.render and openwop:campaign-studio.get-design.","tags":["general"]},{"id":"feature.cms.agents.content-editor","name":"CMS Content Editor","description":"Drafts, localizes, and SUBMITS CMS pages for review (ADR 0204 C6). Reads with openwop:cms.get-page / openwop:cms.list-pages / openwop:cms.get-draft-page, drafts translations with openwop:cms.translate-section, patches DRAFT sections with openwop:cms.update-section-draft (draft-only, sanitized like an editor save), and submits with openwop:cms.submit-page — the same approval-gate composition as the editor UI. The allowlist deliberately contains NO publish tool: a human approves/publishes.","tags":["general"]},{"id":"feature.cms.agents.localizer","name":"CMS Content Localizer","description":"Drafts per-locale overlays for a published CMS page's sections. Reads the base content with openwop:cms.get-page, then drafts a structure-preserving translation for each section with openwop:cms.translate-section (over ctx.features.cms + the headless provider). Tools are allowlisted to the CMS feature surface only; the agent produces review-ready drafts and never persists.","tags":["general"]},{"id":"feature.code-exec.agents.default","name":"Code Interpreter","description":"Runs code in a sandbox (behind a human approval gate) to compute answers, analyze data, and produce artifacts. Uses openwop:feature.code-exec.nodes.run; honest-off when no sandbox adapter is wired.","tags":["coding"]},{"id":"feature.comments.agents.reviewer","name":"Content Reviewer","description":"Reviews a CMS page or KB collection and posts review comments (clarity, accuracy, gaps) via openwop:comments.post, so a human is notified of the review over the existing inbox. Reads the existing thread first (openwop:comments.list) to avoid duplicate notes. Posts comments only — it does NOT edit the resource (no resource-write tool in its allowlist, by design).","tags":["general"]},{"id":"feature.commerce.agents.store-assistant","name":"Store Assistant","description":"Browse the catalog, look up orders, coupons, and quotes, explain a product's effective price, and DRAFT a quote — grounded in real store state. Reads run under the caller's org RBAC; drafting a quote moves no money and does not send it. Order placement, fulfillment, refunds, inventory, coupon issuance, and sending a quote stay on the human admin + approval surfaces.","tags":["research"]},{"id":"feature.commerce.buyer.agents.procurement-concierge","name":"Procurement Concierge","description":"Shop external UCP merchants on the team's behalf: build a cart pinned to what the human authorized (merchant + items + a spend ceiling), REQUEST the always-human-approved, org-capped checkout (which never buys from chat — it parks a sign-off in the reviews inbox), and track delivery. Purchases and outbound purchase state read under the caller's org RBAC.","tags":["research"]},{"id":"feature.computer-use.agents.operator","name":"Browser Operator","description":"Narrates governed browser sessions (fill a form, fetch a statement, complete a portal step) on an allowlisted site. Reads the recorded trajectory + status via openwop:computer-use.status. Starting a task and approving anything submitted, downloaded, or off-origin happen through the governed run + approval card, not this chat — the operator reports on them, it does not drive them.","tags":["general"]},{"id":"feature.crm.agents.sales-ops","name":"Sales Ops Agent","description":"Answers questions about companies/deals/tasks and does light assistive CRM upkeep — logging an activity note or drafting a follow-up task — grounded in the org's CRM data via feature.crm.nodes over ctx.features.crm. Does NOT create contacts/companies/deals, move a deal's stage, or convert a lead: those governed writes ride the crm-ops chain pack behind a human approval gate, never a direct agent call.","tags":["research"]},{"id":"feature.crm.agents.segment-author","name":"Segment Author Agent","description":"ADR 0265 CDP-C — drafts customer segments from natural language, grounded CLOSED-WORLD in the org's real filter vocabulary (segment-vocabulary), validates every draft (validate-segment), previews reach (list-segment-members), and persists ONLY a validated segment the user confirms (persist-segment). Mirrors the workflow-author draft→validate→persist pattern; runs through the shared chat (EmbeddedChatPanel, ADR 0073), never a second panel. A saved segment is an inert filter until wired to activation (journeys/reverse-ETL), which is separately consent-gated (the CDP Gate-0 order).","tags":["research"]},{"id":"feature.csm.agents.health-insights","name":"CSM Health Insights","description":"Surfaces at-risk customer-success accounts and recommends save-plays, grounded in the org's CSM accounts via feature.csm.nodes.health-read over ctx.features.csm. Read-only: it reports, it does not change health scores.","tags":["research"]},{"id":"feature.dealers.agents.channel-manager","name":"Channel Manager Agent","description":"Reads an org's dealer network, retail outlets, and partner deal registrations (via feature.dealers.nodes over ctx.features.dealers) to answer channel questions and triage pending registrations. Proposes which to approve; it never approves — that is a human-gated admin op.","tags":["research"]},{"id":"feature.discovery.agents.curator","name":"Discovery Curator","description":"Runs faceted product search and curates the storefront — authors collections (manual/dynamic) and pin/boost/bury merchandising rules — via feature.discovery.nodes over ctx.features.discovery.","tags":["research"]},{"id":"feature.documents.agents.document-author","name":"Document Author","description":"Drafts a business document (SOW/PRD/RFP/Epic-Brief/board-agenda) from a template + parameters, grounded via feature.documents.nodes.generate-from-template over ctx.features.documents.","tags":["builder"]},{"id":"feature.documents.agents.document-reviewer","name":"Document Reviewer","description":"Critiques an existing business document against its kind's rubric (completeness, clarity, risks) — grounded via feature.documents.nodes.list-documents. Read-only: it reports, it never edits.","tags":["research"]},{"id":"feature.drawings.agents.default","name":"Illustrator","description":"Turns a request into a vector illustration or diagram rendered live in the artifact workbench. Uses openwop:drawings.render (and openwop:drawings.get-design to read before revising).","tags":["general"]},{"id":"feature.email.agents.copywriter","name":"Email Copywriter","description":"Drafts and optimizes marketing campaign copy (subject line + body, with {{contact.*}} merge fields). Reads existing drafts + templates for style via openwop:email.get-campaign and persists the copy into a DRAFT campaign via openwop:email.save-draft. Drafts copy only — it does NOT send (no send tool in its allowlist, by design).","tags":["general"]},{"id":"feature.forms.agents.lead-insights","name":"Forms Lead Insights","description":"Summarizes a form's captured submissions into lead insights — volume, common answers, and follow-up suggestions — grounded via the openwop:forms.list-forms / openwop:forms.list-submissions chat tools. Read-only: it reports, it never edits forms or contacts.","tags":["research"]},{"id":"feature.funnels.agents.funnel-architect","name":"Funnel Architect","description":"Reviews funnels and per-step conversion stats, proposes step changes and challenger-page experiments, and drafts funnels — drafts stay unpublished for a human to review, via feature.funnels.nodes over ctx.features.funnels.","tags":["research"]},{"id":"feature.image-gen.agents.default","name":"Image Generator","description":"Helps a user craft a strong image prompt and points them to the in-app Generate / Edit-with-AI affordance. Image generation runs through the media-generation path (workflow node / MediaRef widget), not a conversational tool — so this guide has no chat tools and never claims to have produced an image itself.","tags":["general"]},{"id":"feature.insights-suite.agents.communication","name":"Communication Drafter","description":"Drafts authentic, in-voice recognition messages (work anniversaries, milestones) by retrieving the principal's past messages as style exemplars. ALWAYS a draft for approval — never sends. Humble, gratitude-led tone; bans corporate buzzwords.","tags":["research"]},{"id":"feature.insights-suite.agents.financial","name":"Financial Analyst","description":"Computes Actual-vs-Plan variance for sales/margin/labor/shrink from figures the human supplies, and surfaces off-plan hot spots. Returns NO provenance (no SQL, no as-of timestamp) — it says so rather than implying a verification path that does not exist. Never writes; flags figures for human review.","tags":["research"]},{"id":"feature.insights-suite.agents.talent","name":"Talent Advisor","description":"Reads talent/development data read-only, computes 9-box performance×potential readiness, and prepares talent-review insight for direct reports and two levels down. Read-only HRIS; never writes.","tags":["research"]},{"id":"feature.interactive-artifacts.agents.default","name":"Visualizer","description":"Turns a request into an interactive diagram, chart, or HTML canvas rendered live in the artifact workbench. Uses openwop:interactive-artifacts.render.","tags":["general"]},{"id":"feature.kb.agents.researcher","name":"Knowledge Base Researcher","description":"Answers questions grounded in an org's Knowledge Base. Retrieves with openwop:knowledge.search (lexical) and the openwop:core.rag.retriever-* tools (augmented retrieval), then composes a cited answer from the retrieved context. Tools are allowlisted to the host retrieval surface only.","tags":["research"]},{"id":"feature.kicktodo.agents.accountability-steward","name":"Accountability Steward","description":"Drafts privacy-filtered progress updates for the user's circles/partners from the PROJECTED feeds (grant scopes always applied upstream). Drafts and suggests only — it can never expand grants, invite members, or read beyond the allowlisted tools.","tags":["research"]},{"id":"feature.kicktodo.agents.challenge-author","name":"Challenge Author","description":"The roster-bound named agent a creator converses with in the ONE chat to build a challenge (ADR 0458). Elicits topic/audience/transformation, then dispatches the Challenge Factory run for a candidate and shepherds the creator through the inline approvals. It SUBMITS a challenge for a separation-of-duties publish decision — it never publishes. Unlike the handoff skills in this pack it is conversational (per-run dialogue memory) and holds its own action tools; authorization is the authoring route's shared predicate, so a participant reaching it cannot drive the factory.","tags":["research"]},{"id":"feature.kicktodo.agents.plan-builder","name":"Plan Builder","description":"Personalizes a challenge plan within the publisher's adaptation policy: proposes schedule/intensity/substitution adjustments from the participant's stated constraints. PROPOSES only — the participant approves; enrollment/goal writes ride the governed surface.","tags":["research"]},{"id":"feature.kicktodo.agents.progress-verifier","name":"Progress Verifier","description":"Explains a judged progress verdict to the participant (what counted, what remains) from the frozen evidence metrics. The VERDICT itself is the deterministic host judge through the standing-goals owner — this skill narrates, it never judges or closes goals.","tags":["research"]},{"id":"feature.kicktodo.agents.replan-composer","name":"Replan Composer","description":"Turns a participant's stated intent into a typed, closed-world plan revision (ADR 0459 P1). Reads the enrollment's REAL state with its two READ tools, then composes ONLY the ADR 0429 flexibility lanes — schedule preference, publisher-declared substitution, missed-window recovery — returning a `plan-revision` object. It commits NO domain state: the commands flow into the replan builtin for closed-world validation and the participant's own approval gate before any governed apply. An intent it cannot honestly express in the lanes yields an EMPTY commands array with the rationale saying so — it never invents an activity, touches an evidence policy, or forces a wrong command.","tags":["research"]},{"id":"feature.kicktodo.agents.safety-reviewer","name":"Safety Reviewer","description":"Independently reviews a proposed plan change for safety: overload, contraindicated intensity ramps, guilt mechanics, or scope that needs a qualified human. Returns a typed pass/block/escalate finding; it cannot approve its own generator's work or write domain state.","tags":["research"]},{"id":"feature.kicktodo.agents.sim-newcomer","name":"Sim: Newcomer","description":"A simulated FIRST-TIME participant with low domain knowledge and high motivation. Walks a candidate plan day-by-day and reports confusion points, missing prerequisites, and unclear instructions. READ-ONLY: reports findings as scratchpad output for the factory's evaluation stage — never writes domain state.","tags":["research"]},{"id":"feature.kicktodo.agents.sim-skeptic","name":"Sim: Skeptic","description":"A simulated evidence-demanding participant. Challenges every claim's sourcing, flags unsupported transformation promises and safety gaps. READ-ONLY scratchpad reporter for the factory's evaluation stage.","tags":["research"]},{"id":"feature.kicktodo.agents.sim-time-poor","name":"Sim: Time-poor","description":"A simulated participant with 20 minutes/day and unpredictable interruptions. Stress-tests daily load, snooze/recovery paths, and plan resilience under skipped days. READ-ONLY scratchpad reporter for the factory's evaluation stage.","tags":["research"]},{"id":"feature.marketplace.agents.recommender","name":"Marketplace Recommender","description":"Recommends installable packs for a described need, grounded in the live catalog via the openwop:marketplace.search chat tool. Read-only: it suggests packs (name + why), it does NOT install them — install is a privileged admin/host:* action with no agent tool.","tags":["research"]},{"id":"feature.notebooks.agents.researcher","name":"Notebook Research Analyst","description":"A research analyst grounded in ONE notebook's sources. Retrieves with openwop:notebooks.ask / openwop:notebooks.search (over ctx.features.notebooks), honors per-source context levels (Full/Excluded), composes a cited answer, and on request authors + persists a transformation (summary / key concepts / etc.) as a notebook-owned Document via openwop:notebooks.write-transformation. Tools are allowlisted to the notebooks feature surface only.","tags":["research"]},{"id":"feature.podcasts.agents.producer","name":"Podcast Producer","description":"A producer who helps plan and produce a multi-speaker audio episode from a research notebook — the briefing, the cast (1–4 speakers with distinct personas/voices), the segment count, and the outline angle. Grounds the plan on the workspace's cast/format profiles + shows + episodes via openwop:podcasts.list, then ignites the generation run via openwop:podcasts.produce (an async, workspace:write run that never publishes on its own). Tools are allowlisted to the podcasts feature surface only.","tags":["research"]},{"id":"feature.priority-matrix.agents.prioritization-analyst","name":"Prioritization Analyst","description":"Captures and scores ideas in a priority list, explains the weighted ranking (Weighted-Scoring / WSJF / RICE), and drafts a planning-session agenda — grounded via feature.priority-matrix.nodes over ctx.features['priority-matrix']. Recommends; the human decides.","tags":["research"]},{"id":"feature.production.agents.production-planner","name":"Production Planner","description":"Recommends how each campaign asset should be produced — internal team, contractor, agency, or hybrid — with budget and timeline, ranking your team and vendors by channel fit. Reads the Vendor Directory and ignites a run that generates the plan via the openwop:production.* tools. Recommends; the human approves the plan.","tags":["research"]},{"id":"feature.promotions.agents.promotions-manager","name":"Promotions Manager","description":"Reviews active promotions, previews the discount on a cart, and drafts new promotions (cart-threshold / product-discount / loss-leader) — drafts land PROPOSED for a human to activate, via feature.promotions.nodes over ctx.features.promotions.","tags":["research"]},{"id":"feature.recommendations.agents.merchandiser","name":"Merchandiser","description":"Reviews recommendation placements across the funnel and authors upsell/cross-sell/FBT placements, grounded in the org's catalog via feature.recommendations.nodes over ctx.features.recommendations.","tags":["research"]},{"id":"feature.sales-commissions.agents.commissions-analyst","name":"Commissions Analyst Agent","description":"Reads an org's commission plans and statements (via feature.sales-commissions.nodes over ctx.features.commissions) to answer comp questions and explain how a rep's statement was computed. Proposes plan/accelerator changes; it never computes or approves a statement — those are human-gated admin ops.","tags":["research"]},{"id":"feature.service-desk.agents.support","name":"Support Agent","description":"Triages support tickets: summarizes threads, suggests priorities, sets status, and drafts replies for your approval — nothing reaches a customer without a human decision.","tags":["general"]},{"id":"feature.slides.agents.default","name":"Slide Designer","description":"Turns a topic or outline into a structured slide deck rendered live in the artifact workbench; for full decks it recommends the outline-first `slides.design` workflow. Edits existing decks through the canvas working copy (each write snapshots a version — the editor's Compare shows the scoped diff) and restyles without touching content.","tags":["general"]},{"id":"feature.strategy.agents.strategy-analyst","name":"Strategy Analyst","description":"Audits the strategy portfolio for alignment gaps (strategies with no linked execution, objectives with no key results, off-track linked projects, owner-less initiatives) and drafts board-ready memos — grounded via feature.strategy.nodes over ctx.features.strategy. Recommends and drafts; the human decides and authors strategy. It never mutates strategy data.","tags":["research"]},{"id":"feature.territories.agents.territory-planner","name":"Territory Planner Agent","description":"Reads an org's territory models, hierarchy, assignment rules, quotas and attainment (via feature.territories.nodes over ctx.features.territories) to answer coverage/quota questions and evaluate re-org scenarios with the dry-run preview. Proposes rule and quota changes; it never activates a model or writes a quota — those are human-gated admin ops.","tags":["research"]},{"id":"feature.tutorials.agents.tutor","name":"Tutor","description":"Helps you learn this product: finds the tutorial that matches what you are trying to do, explains any step in your own words, and tells you where you left off. Points you at the guided walkthrough to run — it cannot press the buttons for you.","tags":["research"]},{"id":"feature.voice.agents.assistant","name":"Voice Assistant","description":"A conversational assistant tuned for voice mode: concise spoken-first replies, one idea at a time, explicit confirmation before acting. Reads aloud well (no tables/long lists/markdown noise). Rides the ONE chat; its spoken voice is configured per-agent in agent settings.","tags":["general"]},{"id":"feature.whatsapp.agents.customer-service","name":"WhatsApp Customer Service","description":"Answers customer questions over the workspace knowledge base — order/FAQ lookups within defined functions only. Deliberately NOT a general assistant (Meta's Business Solution Terms bar general-purpose AI as primary functionality on WhatsApp); requests outside its defined functions are redirected to a human.","tags":["general"]},{"id":"feature.workflow-author.agents.workflow-architect","name":"Workflow Architect","description":"Turns a natural-language automation intent into a runnable workflow: reads the closed-world node catalog, drafts an ACYCLIC node/edge DAG, validates it, and registers it — grounded via feature.workflow-author.nodes over ctx.features['workflow-author']. Never invents node types; the human opens and reviews the result in the builder. When the user wants the outcome (not just the workflow), it PROPOSES: the draft holds for review and runs only on the user's approval (ADR 0473).","tags":["research"]},{"id":"vendor.myndhyve.ads-crew.creative-director","name":"Ads Studio Creative Director","description":"Single chat-driven persona over MyndHyve Ads Studio. Takes a campaign brief and drives the Ads Studio workflow pipeline (brief.extract → copy.generate → image.generate → creative.validate → tracking.link → export.pack → publish.{meta,google,tiktok}), whose nodes perform each stage. Interprets the brief, sequences the stages, and synthesizes results. Tracks campaign artifacts in long-term memory for follow-up + iteration.","tags":["reasoning"]},{"id":"vendor.myndhyve.market-intel-crew.research-director","name":"Market Intel Research Director","description":"Single chat-driven persona over the full MyndHyve Market Intel pipeline. Translates a user brief (\"research the ICP for X\") into a sequenced run of the workflow's stages (query-builder → discovery → community-rank → thread-triage → content-extraction → voc-extraction → opportunity-scoring → ad-angles → audience-targeting), whose nodes perform the work; the director interprets the brief, orders the stages, and synthesizes the deliverable. Persists ICP / topic / cycle results to long-term memory for re-use across runs.","tags":["research"]}]}