{
  "schemaVersion": "1.0",
  "item": {
    "slug": "flomo-crud-skill",
    "name": "flomo-crud-skill",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/Undertone0809/flomo-crud-skill",
    "canonicalUrl": "https://clawhub.ai/Undertone0809/flomo-crud-skill",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/flomo-crud-skill",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=flomo-crud-skill",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "README.md",
      "SKILL.md",
      "agents/openai.yaml",
      "references/ui-locators.md",
      "references/workflows.md",
      "references/safety.md"
    ],
    "primaryDoc": "SKILL.md",
    "quickSetup": [
      "Download the package from Yavira.",
      "Extract the archive and review SKILL.md first.",
      "Import or place the package into your OpenClaw setup."
    ],
    "agentAssist": {
      "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
      "steps": [
        "Download the package from Yavira.",
        "Extract it into a folder your agent can access.",
        "Paste one of the prompts below and point your agent at the extracted folder."
      ],
      "prompts": [
        {
          "label": "New install",
          "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
        },
        {
          "label": "Upgrade existing",
          "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-07T17:22:31.273Z",
      "expiresAt": "2026-05-14T17:22:31.273Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=afrexai-annual-report",
        "contentDisposition": "attachment; filename=\"afrexai-annual-report-1.0.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/flomo-crud-skill"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    },
    "downloadPageUrl": "https://openagent3.xyz/downloads/flomo-crud-skill",
    "agentPageUrl": "https://openagent3.xyz/skills/flomo-crud-skill/agent",
    "manifestUrl": "https://openagent3.xyz/skills/flomo-crud-skill/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/flomo-crud-skill/agent.md"
  },
  "agentAssist": {
    "summary": "Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.",
    "steps": [
      "Download the package from Yavira.",
      "Extract it into a folder your agent can access.",
      "Paste one of the prompts below and point your agent at the extracted folder."
    ],
    "prompts": [
      {
        "label": "New install",
        "body": "I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Then review README.md for any prerequisites, environment setup, or post-install checks. Tell me what you changed and call out any manual steps you could not complete."
      },
      {
        "label": "Upgrade existing",
        "body": "I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Then review README.md for any prerequisites, environment setup, or post-install checks. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "Overview",
        "body": "Use Chrome MCP tools to operate on live flomo memos at https://v.flomoapp.com/mine.\n\nThis skill is for Web UI automation only. It does not depend on flomo official APIs.\n\nDefault behavior (v1):\n\nFull CRUD (query/search, create/insert, edit, delete)\nText search first, but lock a target by memo_id before write actions\nedit defaults to full content replacement (replace)\ndelete always requires explicit second confirmation\nAuto deep scan for search with default cap of 50 memos\nMinimal logging (do not persist memo body text)"
      },
      {
        "title": "Preconditions",
        "body": "User is already logged in to flomo Web in Chrome\nChrome MCP is available and working in this Codex session\nPrefer desktop layout (wide viewport). Mobile layout is best-effort only."
      },
      {
        "title": "Use This Skill When",
        "body": "The user asks to search or find live flomo memos\nThe user asks to insert/create a flomo memo in their real account\nThe user asks to edit/update an existing flomo memo\nThe user asks to delete a flomo memo and accepts confirmation steps"
      },
      {
        "title": "Do Not Use This Skill When",
        "body": "The user only wants to process exported flomo HTML/archives (use flomo-memo-to-markdown instead)\nThe user asks for batch operations across many memos (not v1)\nThe user asks for attachment upload/edit support (not v1)"
      },
      {
        "title": "Default Workflow (High Level)",
        "body": "Confirm Chrome MCP connectivity and switch to the flomo tab (or navigate to flomo).\nFor query/edit/delete, run search workflow and build memo candidates from visible memo cards/links.\nIf needed, deep-scan by scrolling and repeating reads up to the scan cap.\nFor write operations, lock the target by memo_id and present a confirmation step.\nExecute UI actions with chrome_read_page refs first; refresh refs if they expire.\nValidate the result by re-reading the page and summarizing the outcome."
      },
      {
        "title": "Safety Rules (Must Follow)",
        "body": "delete: Always require explicit second confirmation before actual deletion.\nedit via text search: Require candidate confirmation before writing.\nDo not persist memo body text to local files.\nIf target UI controls cannot be located reliably, stop and report a recoverable failure instead of guessing."
      },
      {
        "title": "Tool Priority",
        "body": "Use mcp-chrome-global Chrome MCP tools in this order of preference:\n\nchrome_switch_tab / chrome_navigate\nchrome_read_page (structured refs)\nchrome_get_web_content (fast visible text read)\nchrome_click_element, chrome_fill_or_select, chrome_keyboard\nchrome_screenshot (debugging / visual confirmation)\nchrome_computer (coordinate fallback, minimal use)\nchrome_request_element_selection (human-in-the-loop fallback after repeated failures)"
      },
      {
        "title": "query/search",
        "body": "Return candidate memos with:\n\nmemo_id\nvisible timestamp text\nshort snippet\nmatch reason"
      },
      {
        "title": "create/insert",
        "body": "Insert a new memo through the top editor and report success with best-effort new memo_id detection."
      },
      {
        "title": "edit",
        "body": "Default mode is replace (replace full memo body). append/prepend are reserved optional modes and may be unsupported in v1 unless explicitly implemented during the run."
      },
      {
        "title": "delete",
        "body": "Delete a single target memo only after the user confirms the selected candidate."
      },
      {
        "title": "Candidate / Action / Result Shapes",
        "body": "Use these internal conventions in responses and reasoning (no code API required):"
      },
      {
        "title": "MemoCandidate",
        "body": "memo_id: string\ntimestamp_text: string\nsnippet: string\nmatch_reason: string\nscore?: number"
      },
      {
        "title": "ActionPlan",
        "body": "action: query | create | edit | delete\ntarget_query?: string\ntarget_memo_id?: string\nedit_mode?: replace | append | prepend\nscan_limit: number (default 50)\nrequires_confirmation: boolean"
      },
      {
        "title": "ActionResult",
        "body": "success: boolean\naction: string\nmemo_id?: string\nmatched_count?: number\nmessage: string\nwarnings?: string[]"
      },
      {
        "title": "Follow-Up Questions (Ask Only When Needed)",
        "body": "Ask only if it changes the action materially:\n\nMultiple candidates match and a write action is requested\nThe user did not provide new content for create or edit\nThe user wants a scan cap larger than the default 50\nThe page layout is mobile or controls cannot be found reliably\nA destructive action (delete) reaches the final confirmation point"
      },
      {
        "title": "References",
        "body": "Workflow details: references/workflows.md\nUI locator strategy and fallback policy: references/ui-locators.md\nSafety and logging policy: references/safety.md\nValidation checklist: references/test-checklist.md"
      }
    ],
    "body": "Flomo Web CRUD\nOverview\n\nUse Chrome MCP tools to operate on live flomo memos at https://v.flomoapp.com/mine.\n\nThis skill is for Web UI automation only. It does not depend on flomo official APIs.\n\nDefault behavior (v1):\n\nFull CRUD (query/search, create/insert, edit, delete)\nText search first, but lock a target by memo_id before write actions\nedit defaults to full content replacement (replace)\ndelete always requires explicit second confirmation\nAuto deep scan for search with default cap of 50 memos\nMinimal logging (do not persist memo body text)\nPreconditions\nUser is already logged in to flomo Web in Chrome\nChrome MCP is available and working in this Codex session\nPrefer desktop layout (wide viewport). Mobile layout is best-effort only.\nUse This Skill When\nThe user asks to search or find live flomo memos\nThe user asks to insert/create a flomo memo in their real account\nThe user asks to edit/update an existing flomo memo\nThe user asks to delete a flomo memo and accepts confirmation steps\nDo Not Use This Skill When\nThe user only wants to process exported flomo HTML/archives (use flomo-memo-to-markdown instead)\nThe user asks for batch operations across many memos (not v1)\nThe user asks for attachment upload/edit support (not v1)\nDefault Workflow (High Level)\nConfirm Chrome MCP connectivity and switch to the flomo tab (or navigate to flomo).\nFor query/edit/delete, run search workflow and build memo candidates from visible memo cards/links.\nIf needed, deep-scan by scrolling and repeating reads up to the scan cap.\nFor write operations, lock the target by memo_id and present a confirmation step.\nExecute UI actions with chrome_read_page refs first; refresh refs if they expire.\nValidate the result by re-reading the page and summarizing the outcome.\nSafety Rules (Must Follow)\ndelete: Always require explicit second confirmation before actual deletion.\nedit via text search: Require candidate confirmation before writing.\nDo not persist memo body text to local files.\nIf target UI controls cannot be located reliably, stop and report a recoverable failure instead of guessing.\nTool Priority\n\nUse mcp-chrome-global Chrome MCP tools in this order of preference:\n\nchrome_switch_tab / chrome_navigate\nchrome_read_page (structured refs)\nchrome_get_web_content (fast visible text read)\nchrome_click_element, chrome_fill_or_select, chrome_keyboard\nchrome_screenshot (debugging / visual confirmation)\nchrome_computer (coordinate fallback, minimal use)\nchrome_request_element_selection (human-in-the-loop fallback after repeated failures)\nIntent Mapping\nquery/search\n\nReturn candidate memos with:\n\nmemo_id\nvisible timestamp text\nshort snippet\nmatch reason\ncreate/insert\n\nInsert a new memo through the top editor and report success with best-effort new memo_id detection.\n\nedit\n\nDefault mode is replace (replace full memo body). append/prepend are reserved optional modes and may be unsupported in v1 unless explicitly implemented during the run.\n\ndelete\n\nDelete a single target memo only after the user confirms the selected candidate.\n\nCandidate / Action / Result Shapes\n\nUse these internal conventions in responses and reasoning (no code API required):\n\nMemoCandidate\nmemo_id: string\ntimestamp_text: string\nsnippet: string\nmatch_reason: string\nscore?: number\nActionPlan\naction: query | create | edit | delete\ntarget_query?: string\ntarget_memo_id?: string\nedit_mode?: replace | append | prepend\nscan_limit: number (default 50)\nrequires_confirmation: boolean\nActionResult\nsuccess: boolean\naction: string\nmemo_id?: string\nmatched_count?: number\nmessage: string\nwarnings?: string[]\nFollow-Up Questions (Ask Only When Needed)\n\nAsk only if it changes the action materially:\n\nMultiple candidates match and a write action is requested\nThe user did not provide new content for create or edit\nThe user wants a scan cap larger than the default 50\nThe page layout is mobile or controls cannot be found reliably\nA destructive action (delete) reaches the final confirmation point\nReferences\nWorkflow details: references/workflows.md\nUI locator strategy and fallback policy: references/ui-locators.md\nSafety and logging policy: references/safety.md\nValidation checklist: references/test-checklist.md"
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/Undertone0809/flomo-crud-skill",
    "publisherUrl": "https://clawhub.ai/Undertone0809/flomo-crud-skill",
    "owner": "Undertone0809",
    "version": "1.0.0",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/flomo-crud-skill",
    "downloadUrl": "https://openagent3.xyz/downloads/flomo-crud-skill",
    "agentUrl": "https://openagent3.xyz/skills/flomo-crud-skill/agent",
    "manifestUrl": "https://openagent3.xyz/skills/flomo-crud-skill/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/flomo-crud-skill/agent.md"
  }
}