{
  "schemaVersion": "1.0",
  "item": {
    "slug": "epragma-redmine-issue",
    "name": "Epragma Redmine Issue",
    "source": "tencent",
    "type": "skill",
    "category": "开发工具",
    "sourceUrl": "https://clawhub.ai/agelospanagiotakis/epragma-redmine-issue",
    "canonicalUrl": "https://clawhub.ai/agelospanagiotakis/epragma-redmine-issue",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadMode": "redirect",
    "downloadUrl": "/downloads/epragma-redmine-issue",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=epragma-redmine-issue",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "installMethod": "Manual import",
    "extraction": "Extract archive",
    "prerequisites": [
      "OpenClaw"
    ],
    "packageFormat": "ZIP package",
    "includedAssets": [
      "SKILL.md",
      "_meta.json",
      "memory/2026-02-25.md",
      "scripts/issues.mjs",
      "scripts/lib/redmine.js"
    ],
    "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. 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. Summarize what changed and any follow-up checks I should run."
        }
      ]
    },
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-30T16:55:25.780Z",
      "expiresAt": "2026-05-07T16:55:25.780Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=network",
        "contentDisposition": "attachment; filename=\"network-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/epragma-redmine-issue"
    },
    "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/epragma-redmine-issue",
    "agentPageUrl": "https://openagent3.xyz/skills/epragma-redmine-issue/agent",
    "manifestUrl": "https://openagent3.xyz/skills/epragma-redmine-issue/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/epragma-redmine-issue/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. 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. Summarize what changed and any follow-up checks I should run."
      }
    ]
  },
  "documentation": {
    "source": "clawhub",
    "primaryDoc": "SKILL.md",
    "sections": [
      {
        "title": "ePragma Redmine Issue",
        "body": "Read Redmine issues through REST API."
      },
      {
        "title": "Configuration",
        "body": "This skill requires REDMINE_URL and REDMINE_API_KEY to be configured."
      },
      {
        "title": "Setup with OpenClaw CLI",
        "body": "Run these commands to configure the skill:\n\n# Set your Redmine URL\nopenclaw skills config epragma-redmine-issue set REDMINE_URL https://your-redmine-server.com\n\n# Set your API key (generate from Redmine My Account page)\nopenclaw skills config epragma-redmine-issue set REDMINE_API_KEY your-api-key-here"
      },
      {
        "title": "Get your API Key",
        "body": "Log in to your Redmine server\nGo to \"My Account\"\nClick \"Show\" next to \"API access key\"\nCopy the key"
      },
      {
        "title": "Get one issue",
        "body": "node {baseDir}/scripts/issues.mjs get --id 123"
      },
      {
        "title": "List issues",
        "body": "node {baseDir}/scripts/issues.mjs list\nnode {baseDir}/scripts/issues.mjs list --project-id my-project --status-id open --limit 20 --offset 0\nnode {baseDir}/scripts/issues.mjs list --assigned-to-id me --sort \"updated_on:desc\"\nnode {baseDir}/scripts/issues.mjs list --project my-project"
      },
      {
        "title": "List projects",
        "body": "node {baseDir}/scripts/issues.mjs projects"
      },
      {
        "title": "List statuses",
        "body": "node {baseDir}/scripts/issues.mjs statuses"
      },
      {
        "title": "Update one issue",
        "body": "node {baseDir}/scripts/issues.mjs update --id 123 --status-id 2 --notes \"this is ok\"\nnode {baseDir}/scripts/issues.mjs update --id 123 --assigned-to-id 6 --priority-id 3\nnode {baseDir}/scripts/issues.mjs update --id 123 --done-ratio 50 --notes \"done 50%\""
      },
      {
        "title": "Add comment to issue",
        "body": "node {baseDir}/scripts/issues.mjs comment --id 123 --notes \"This is a comment\""
      },
      {
        "title": "Create new issue",
        "body": "# Required: --project-id (or project name), --subject\n# Optional: --description, --tracker-id, --priority-id, --assigned-to-id, --status-id, --start-date, --due-date, --done-ratio, --estimated-hours\n\nnode {baseDir}/scripts/issues.mjs create --project-id 1 --subject \"New issue title\"\nnode {baseDir}/scripts/issues.mjs create --project-id epragma --subject \"Bug report\" --description \"Details here\" --priority-id 4"
      },
      {
        "title": "Time Entries",
        "body": "# List time entries (filters: --issue-id, --project-id, --user-id, --from, --to, --spent-on)\nnode {baseDir}/scripts/issues.mjs time-list\nnode {baseDir}/scripts/issues.mjs time-list --issue-id 232\nnode {baseDir}/scripts/issues.mjs time-list --project-id 1 --from 2026-01-01 --to 2026-01-31\n\n# Add time entry (required: --issue-id OR --project-id, --hours; optional: --activity-id, --spent-on, --comments)\nnode {baseDir}/scripts/issues.mjs time-add --issue-id 232 --hours 2 --activity-id 9 --comments \"Work done\"\nnode {baseDir}/scripts/issues.mjs time-add --project-id 1 --hours 1.5 --activity-id 8\n\n# List available activities\nnode {baseDir}/scripts/issues.mjs time-activities"
      },
      {
        "title": "Notes",
        "body": "URL and auth are variables by design for cross-environment deployment.\nAPI responses are output as JSON.\nFor automation, prefer REDMINE_API_KEY over username/password."
      }
    ],
    "body": "ePragma Redmine Issue\n\nRead Redmine issues through REST API.\n\nConfiguration\n\nThis skill requires REDMINE_URL and REDMINE_API_KEY to be configured.\n\nSetup with OpenClaw CLI\n\nRun these commands to configure the skill:\n\n# Set your Redmine URL\nopenclaw skills config epragma-redmine-issue set REDMINE_URL https://your-redmine-server.com\n\n# Set your API key (generate from Redmine My Account page)\nopenclaw skills config epragma-redmine-issue set REDMINE_API_KEY your-api-key-here\n\nGet your API Key\nLog in to your Redmine server\nGo to \"My Account\"\nClick \"Show\" next to \"API access key\"\nCopy the key\nGet one issue\nnode {baseDir}/scripts/issues.mjs get --id 123\n\nList issues\nnode {baseDir}/scripts/issues.mjs list\nnode {baseDir}/scripts/issues.mjs list --project-id my-project --status-id open --limit 20 --offset 0\nnode {baseDir}/scripts/issues.mjs list --assigned-to-id me --sort \"updated_on:desc\"\nnode {baseDir}/scripts/issues.mjs list --project my-project\n\nList projects\nnode {baseDir}/scripts/issues.mjs projects\n\nList statuses\nnode {baseDir}/scripts/issues.mjs statuses\n\nUpdate one issue\nnode {baseDir}/scripts/issues.mjs update --id 123 --status-id 2 --notes \"this is ok\"\nnode {baseDir}/scripts/issues.mjs update --id 123 --assigned-to-id 6 --priority-id 3\nnode {baseDir}/scripts/issues.mjs update --id 123 --done-ratio 50 --notes \"done 50%\"\n\nAdd comment to issue\nnode {baseDir}/scripts/issues.mjs comment --id 123 --notes \"This is a comment\"\n\nCreate new issue\n# Required: --project-id (or project name), --subject\n# Optional: --description, --tracker-id, --priority-id, --assigned-to-id, --status-id, --start-date, --due-date, --done-ratio, --estimated-hours\n\nnode {baseDir}/scripts/issues.mjs create --project-id 1 --subject \"New issue title\"\nnode {baseDir}/scripts/issues.mjs create --project-id epragma --subject \"Bug report\" --description \"Details here\" --priority-id 4\n\nTime Entries\n# List time entries (filters: --issue-id, --project-id, --user-id, --from, --to, --spent-on)\nnode {baseDir}/scripts/issues.mjs time-list\nnode {baseDir}/scripts/issues.mjs time-list --issue-id 232\nnode {baseDir}/scripts/issues.mjs time-list --project-id 1 --from 2026-01-01 --to 2026-01-31\n\n# Add time entry (required: --issue-id OR --project-id, --hours; optional: --activity-id, --spent-on, --comments)\nnode {baseDir}/scripts/issues.mjs time-add --issue-id 232 --hours 2 --activity-id 9 --comments \"Work done\"\nnode {baseDir}/scripts/issues.mjs time-add --project-id 1 --hours 1.5 --activity-id 8\n\n# List available activities\nnode {baseDir}/scripts/issues.mjs time-activities\n\nNotes\nURL and auth are variables by design for cross-environment deployment.\nAPI responses are output as JSON.\nFor automation, prefer REDMINE_API_KEY over username/password."
  },
  "trust": {
    "sourceLabel": "tencent",
    "provenanceUrl": "https://clawhub.ai/agelospanagiotakis/epragma-redmine-issue",
    "publisherUrl": "https://clawhub.ai/agelospanagiotakis/epragma-redmine-issue",
    "owner": "agelospanagiotakis",
    "version": "0.0.1",
    "license": null,
    "verificationStatus": "Indexed source record"
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/epragma-redmine-issue",
    "downloadUrl": "https://openagent3.xyz/downloads/epragma-redmine-issue",
    "agentUrl": "https://openagent3.xyz/skills/epragma-redmine-issue/agent",
    "manifestUrl": "https://openagent3.xyz/skills/epragma-redmine-issue/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/epragma-redmine-issue/agent.md"
  }
}