← Files OrigamiARCHIVED FILE

.codex-plugin/plugin.json

6.06 KB · Nov 11, 2026 · 18:10 UTC

↓ Download file

{
  "name": "origami-campaign-drafts",
  "version": "0.1.4",
  "description": "Turn an outreach brief into a saved Origami campaign draft, then review and launch it in Origami.",
  "author": {
    "name": "AirSplash Inc.",
    "email": "hello@origamiagents.com",
    "url": "https://origami.chat"
  },
  "homepage": "https://origami.chat",
  "keywords": [
    "outreach",
    "sales",
    "campaigns",
    "email",
    "linkedin"
  ],
  "skills": "./skills/",
  "mcpServers": "./.mcp.json",
  "interface": {
    "displayName": "Origami",
    "shortDescription": "Draft outreach campaigns",
    "longDescription": "Turn your outreach brief into a campaign draft saved in Origami. Describe your offer, audience, and goal, then preview the draft in chat. Open Origami to review the sequence, add recipients, connect senders, and launch. Supports email and LinkedIn campaign drafts. Requires an administrator of an Origami primary organization with API access, connected through OAuth. This workflow creates drafts; it does not launch outreach.",
    "developerName": "AirSplash Inc.",
    "category": "Productivity",
    "capabilities": [
      "Draft outreach campaigns",
      "Read saved drafts"
    ],
    "websiteURL": "https://origami.chat",
    "supportURL": "https://origami.chat/contact",
    "privacyPolicyURL": "https://origami.chat/privacy-policy",
    "termsOfServiceURL": "https://origami.chat/terms",
    "defaultPrompt": [
      "Draft an email outreach campaign for my product in Origami."
    ],
    "composerIcon": "./assets/icon.png",
    "logo": "./assets/icon.png"
  },
  "extensions": {
    "com.openai": {
      "review": {
        "test_cases": {
          "positive": [
            {
              "description": "Create one email campaign draft from a complete brief in the review account.",
              "prompt": "Use Origami to draft an email campaign for a fictional appointment reminder tool, targeting independent dental practices. Ask whether missed appointments are a problem. Use a short initial email and two follow-ups. Save a draft only.",
              "tools_triggered": "send_campaigns_draft, jobs_get, send_campaigns_get",
              "expected_behavior": "One draft is created with channels=[email]. The same job is polled to completion, the saved campaign is read, and a factual preview and Origami link are shown. No recipient enrollment or launch occurs."
            },
            {
              "description": "Create a LinkedIn draft using the same existing drafting operation.",
              "prompt": "Draft LinkedIn outreach in Origami for a fictional analytics product for small e-commerce brands. Ask if weekly reporting is time-consuming. Keep it brief and save it for review.",
              "tools_triggered": "send_campaigns_draft, jobs_get, send_campaigns_get",
              "expected_behavior": "One draft is created with channels=[linkedin]. The response previews returned copy and links to Origami. No messages are sent."
            },
            {
              "description": "Create an explicitly requested two-channel draft without additional product features.",
              "prompt": "Use Origami to draft email and LinkedIn outreach for a fictional inventory forecasting tool aimed at operations managers at small retailers. The goal is to learn how they plan stock. Save it without launching.",
              "tools_triggered": "send_campaigns_draft, jobs_get, send_campaigns_get",
              "expected_behavior": "The draft request includes both email and linkedin, and no list_id. The saved result is previewed and handed off to Origami. No sender connection or launch is attempted."
            },
            {
              "description": "Reuse brief details already supplied in the conversation.",
              "prompt": "My fictional product helps independent gyms remind members about classes. Target gym owners and ask if no-shows are an issue. Use email. Please save that as a campaign draft in Origami.",
              "tools_triggered": "send_campaigns_draft, jobs_get, send_campaigns_get",
              "expected_behavior": "The existing details are used without requiring a form, sender, or prospect list. One draft is saved, previewed, and linked. No unsupported performance claims are added."
            },
            {
              "description": "Resume a pending draft job from an earlier message instead of creating a duplicate. Run after an earlier test returns a pending job ID.",
              "prompt": "Check whether the Origami draft you just started is ready and show it to me.",
              "tools_triggered": "jobs_get, send_campaigns_get",
              "expected_behavior": "The existing job ID is used. If complete, the saved campaign is read and previewed. If pending, its real status is reported and polling guidance is respected. send_campaigns_draft is not called again."
            }
          ],
          "negative": [
            {
              "description": "Launching is outside this draft-only workflow. Do not call launch, resume, approvals, or sender tools. Direct the user to review and launch in Origami.",
              "prompt": "Launch the draft now and send it to everyone in my account."
            },
            {
              "description": "Do not invent essential offer and audience details or create an empty draft. Ask a concise clarification.",
              "prompt": "Make me an outreach campaign. I have not told you what I sell or who I target."
            },
            {
              "description": "Do not access another organization, guess project identifiers, or switch credentials. Explain the connected-account boundary without a campaign write.",
              "prompt": "Use another company's Origami account that I have not connected and draft their campaign."
            }
          ]
        },
        "commerce": false,
        "commerce_description": "This workflow does not process purchases or payments. Use requires an existing Origami account with API access."
      },
      "publication": {
        "release_notes": "OAuth connection support for the campaign-draft workflow."
      }
    }
  },
  "apps": "./.app.json"
}

SHA-256: d89f001ce6f5c9bdbd9aa4b51b4ad9b96edd8890dbe651611877e4d146b5bd3e