← Files QuillmARCHIVED FILE
.codex-plugin/plugin.json
6.48 KB · Nov 5, 2026 · 00:51 UTC
{
"name": "quillm",
"version": "1.0.1",
"description": "Dashboards, trackers and docs your agents build in Quillm and keep current. Your team reads them by link, no AI account needed.",
"author": {
"name": "Streamfog",
"email": "kev@limelit.ai",
"url": "https://quillm.ai"
},
"homepage": "https://quillm.ai/connect",
"repository": "https://github.com/streamfog/quillm-plugin",
"license": "MIT",
"keywords": [
"quillm",
"dashboards",
"trackers",
"reports",
"datasets",
"scheduled agents"
],
"skills": "./skills/",
"mcpServers": "./.mcp.json",
"interface": {
"displayName": "Quillm",
"shortDescription": "Pages your agents keep current",
"longDescription": "Quillm is where the work of your agents accumulates. Ask for a dashboard, a tracker, a decision doc or a calculator and it lands at one address your team opens like a doc, with no AI account needed. The numbers live in datasets, separate from the page, so keeping a page current is a single update: \"add this week's numbers\" adds rows and the page, and every doc that reads the same data, shows them at once. Agents that run on a schedule fill the same datasets every morning, and Quillm flags a dataset as stale when a run is missed. Every save is test-rendered before readers see it, a broken update never replaces a working page, every revision is kept, and every change is signed by the agent that made it.",
"developerName": "Streamfog",
"category": "Productivity",
"capabilities": [
"Interactive",
"Write"
],
"websiteURL": "https://quillm.ai",
"supportURL": "https://quillm.ai/connect#support",
"privacyPolicyURL": "https://quillm.ai/privacy",
"termsOfServiceURL": "https://quillm.ai/terms",
"defaultPrompt": [
"Make a launch checklist in Quillm that my team can work through, with an owner, due date and status for each step",
"Build a dashboard in Quillm of ad spend, signups and cost per signup per day, with sample numbers for now",
"Make a runway calculator in Quillm with sliders for cash, monthly burn and revenue growth"
],
"brandColor": "#16181D",
"composerIcon": "./assets/logo.svg",
"logo": "./assets/logo.png",
"screenshots": [
"./assets/screenshot-card.png",
"./assets/screenshot-point.png",
"./assets/screenshot-pages.png"
]
},
"extensions": {
"com.openai": {
"review": {
"test_cases": {
"positive": [
{
"description": "Create a new tracker",
"prompt": "Make a hiring tracker in Quillm for our three open roles: backend engineer, designer and account executive. Stages are applied, screen, interview, offer, hired and rejected. Start with these candidates: Maya Chen, backend engineer, interview, next step technical interview on Tuesday. Jonas Weber, backend engineer, screen, next step call with Sam on Thursday. Priya Nair, designer, offer, next step send the offer on Monday. Leo Martins, account executive, applied, next step review his CV by Friday. The whole team reads it to see who is where and what happens next, so put upcoming and overdue next steps first. A next step is done when I say so and late once its date has passed.",
"tools_triggered": "get_workspace, get_guide, create_dataset, create_view, share_view, open_page",
"expected_behavior": "Creates a dataset holding the four candidates and a tracker page that reads it, with upcoming and overdue next steps first, without needing to ask questions, and shows the page once in the chat."
},
{
"description": "Add new numbers without touching the page",
"prompt": "Add today's numbers to the Growth dashboard in Quillm: Meta spent \u20ac410 for 96 clicks and 7 signups, Google spent \u20ac380 for 120 clicks and 11 signups, and PostHog counted 26 signups, 11 of them activated.",
"tools_triggered": "get_workspace, query_dataset, upsert_rows, check_view, open_page",
"expected_behavior": "Adds today's two rows to the ad_spend_daily dataset and one to product_daily, and does not change the page's code; shows the Growth page in the chat with the new numbers."
},
{
"description": "Show an existing page",
"prompt": "Show me the competitor watch in Quillm",
"tools_triggered": "get_workspace, open_page",
"expected_behavior": "Finds the Competitor watch page and shows it live in the chat with its current data, with a link to open it in Quillm."
},
{
"description": "Change an existing page",
"prompt": "On the Growth dashboard in Quillm, add a chart of how many signups activated each day",
"tools_triggered": "get_workspace, get_guide, get_view, query_dataset, update_view, check_view, open_page",
"expected_behavior": "Reads the current page, adds one chart of daily activations from the product_daily dataset with targeted edits, reports that the save rendered, then shows the page once in the chat."
},
{
"description": "Share by link",
"prompt": "Give me a link to the Runway calculator in Quillm that I can send to someone without an account",
"tools_triggered": "get_workspace, get_view, share_view",
"expected_behavior": "Because the calculator shows the company's cash and burn, ChatGPT asks the user to confirm before making it public. Once confirmed, turns on link sharing for the Runway calculator and returns the share link, which opens without signing in."
}
],
"negative": [
{
"description": "General knowledge needs no workspace",
"prompt": "What's the capital of Australia?"
},
{
"description": "Unrelated coding needs no workspace",
"prompt": "Write a Python function that reverses a string"
},
{
"description": "A one-off answer is not a page to keep",
"prompt": "Summarize this paragraph in one sentence: The meeting moved to Thursday because the venue was double-booked."
}
]
},
"demo_recording_url": "https://youtu.be/1znkLYc_tXE",
"commerce": false,
"commerce_description": "Quillm does not sell products or process payments inside ChatGPT or Codex. Paid plans are bought on quillm.ai."
}
}
},
"apps": "./.app.json"
}
SHA-256: ec67dc7d332477d1c6bcb1d9bd2efdcfd1dc1fa56515d2086c67c0bdb5153fd4