← Files CleveARCHIVED FILE

plugin.json

7.79 KB · Nov 3, 2026 · 19:15 UTC

↓ Download file

{
  "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
  "name": "app-6ab2a688a5f88191a8d7965b69b3629e",
  "version": "0.1.0",
  "description": "Search, create, edit, and organize notes and workspace knowledge in Cleve.",
  "author": {
    "name": "Cleve Sdn. Bhd.",
    "email": "support@cleve.ai",
    "url": "https://cleve.ai"
  },
  "homepage": "https://cleve.ai",
  "keywords": [
    "notes",
    "knowledge",
    "workspace"
  ],
  "extensions": {
    "com.openai": {
      "interface": {
        "displayName": "Cleve",
        "shortDescription": "Search and edit Cleve notes",
        "longDescription": "Bring your Cleve workspace into the conversation. Find relevant notes and get a context brief with sources. Save a summary of your conversation, including decisions and next steps, as a new Cleve note, or update the relevant existing note instead. When you explicitly want to share publicly, create a summary with a read-only link that anyone can open. You can also save ideas, edit notes, and organize them into folders without leaving the conversation. Cleve only accesses notes and workspaces available to your connected account.",
        "developerName": "Cleve Sdn. Bhd.",
        "category": "Productivity",
        "capabilities": [
          "Read",
          "Write"
        ],
        "websiteURL": "https://cleve.ai",
        "supportURL": "https://cleve.ai/support",
        "privacyPolicyURL": "https://cleve.ai/privacy",
        "termsOfServiceURL": "https://cleve.ai/terms",
        "composerIcon": "./assets/composer-icon.png",
        "logo": "./assets/directory-logo.png",
        "defaultPrompt": [
          "Find relevant context in my Cleve workspace for this discussion and explain what you found.",
          "Save a summary of this conversation to Cleve.",
          "Create a public, read-only link to a summary of this conversation. Anyone with the link can read it."
        ]
      },
      "review": {
        "demo_recording_url": "https://www.youtube.com/watch?v=z2zb765Tjls",
        "commerce": false,
        "commerce_description": "This plugin does not sell products or accept payments. Billing for Cleve itself happens separately on cleve.ai.",
        "test_cases": {
          "positive": [
            {
              "description": "Recall relevant workspace context with sources.",
              "prompt": "Bring in relevant Cleve context about the product roadmap and explain what we have already decided.",
              "tools_triggered": "cleve_list_orgs, cleve_search_notes, cleve_read_note, cleve_cite",
              "expected_behavior": "Uses the recall skill to search the selected workspace, reads relevant matching notes, and explains the findings with source titles and actual note IDs or canonical note links. Distinguishes proposals from decisions and reports gaps or conflicting sources. Does not edit notes or make source links public."
            },
            {
              "description": "Create a public viewer link to a conversation summary.",
              "prompt": "Create a public, read-only link to a summary of this conversation. Anyone with the link can read it. Leave out names and private details.",
              "tools_triggered": "cleve_list_orgs, cleve_create_note, cleve_read_note, cleve_share_note",
              "expected_behavior": "Uses the share skill to create and verify one sanitized Markdown summary note, discloses public access, enables link-sharing with isPublic true, and reads back viewer link state before returning its canonical URL. If sensitive content remains, obtains approval for the sanitized preview before sharing. Does not publish to a feed, share a folder, grant edit access, or send the link to anyone. A failed sharing call is reported as an incomplete share, not a working public link."
            },
            {
              "description": "Save a conversation summary using the bundled save skill.",
              "prompt": "Save a summary of this conversation to Cleve, including our decisions and next steps.",
              "tools_triggered": "cleve_list_orgs, cleve_create_note, cleve_read_note; cleve_cite when returning a link",
              "expected_behavior": "Uses the save skill to summarize the available discussion into one Markdown note in the selected workspace, without inventing decisions or adding a second copy of the title to the note body. Verifies the stored content before reporting success. If the destination is ambiguous, asks which workspace to use; does not publish or share the note."
            },
            {
              "description": "Make a small edit to an existing formatted note without losing formatting or duplicating its title.",
              "prompt": "In my Cleve note \"ChatGPT Review \u2014 Formatting\", replace \"lightweight team-plan trial\" with \"small team-plan pilot\". Make no other changes; keep the title and formatting.",
              "tools_triggered": "cleve_search_notes, cleve_view_note, cleve_replace_in_note",
              "expected_behavior": "Finds the reviewer fixture note named ChatGPT Review \u2014 Formatting, reads its current content, and replaces only the unique phrase lightweight team-plan trial with small team-plan pilot. The phrase is plain text within one formatting run. The note's title remains unchanged and appears only once; all other text, headings, lists, highlights, alignment, and comment marks remain unchanged. Confirms the edit."
            },
            {
              "description": "Update the relevant existing project note rather than create a duplicate.",
              "prompt": "Find my Cleve note \"ChatGPT Review \u2014 Project\" and update it with the decisions and next steps from this conversation. Do not create another note.",
              "tools_triggered": "cleve_list_orgs, cleve_search_notes, cleve_read_note, cleve_view_note, cleve_replace_in_note",
              "expected_behavior": "Uses the update skill to identify and read the existing project note in the resolved workspace, then merges only new agreed context with small, exact edits. Asks when the workspace or target is ambiguous. Skips information already recorded, preserves the title and unrelated content, verifies the resulting note, and returns its existing-access link. Never creates a fallback note or changes sharing. If the live tool warns of lossy formatting, explains the risk and offers a manual patch rather than writing without explicit risk acceptance."
            }
          ],
          "negative": [
            {
              "description": "Do not trigger for a general knowledge question.",
              "prompt": "What is the capital of Malaysia?",
              "expected_behavior": "The app should not be invoked because this request does not require Cleve data or actions."
            },
            {
              "description": "Do not trigger for unrelated calendar management.",
              "prompt": "What meetings do I have tomorrow?",
              "expected_behavior": "The app should not be invoked because calendar access is outside Cleve's supported workflows."
            },
            {
              "description": "Do not trigger for direct email sending.",
              "prompt": "Email my team that the roadmap review is delayed.",
              "expected_behavior": "The app should not be invoked because it cannot send email."
            }
          ]
        }
      },
      "publication": {
        "release_notes": "Initial Cleve plugin package with a hosted MCP connection for searching, reading, creating, editing, and organizing notes. Includes save for conversation summaries, share for public read-only summary links, recall for sourced workspace context, and update for merging new context into existing notes, plus three starter prompts, dedicated composer and directory icons, a demo walkthrough, and review scenarios."
      },
      "apps": "./.app.json"
    }
  }
}

SHA-256: 5330119e588e577ffe094ab3786d19a394d024777adec438b71665d4b10192b1