Token导航 LogoToken导航

Agent Skill · 效率

karma-project-manager(业力项目经理)

karma-project-manager 用于补充效率相关能力,适合在 OpenClaw 中需要让 Agent 承接效率相关任务时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

karma-project-manager 是效率类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为接触敏感数据;许可证为 MIT-0,第三方扫描有提醒项,按安装量在效率类的 21,003 个 Skill 里排第 6,338。

总安装 9,479周安装 403GitHub Stars 公开资料未说明下载 3,321核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
2.0.1

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:karma-project-manager(业力项目经理)
来源仓库:https://github.com/maheshmurthy/karma-project-manager
安装命令:
openclaw skills install karma-project-manager
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install karma-project-manager

这个 Skill 是做什么的

效率类 Skill 把重复的整理、汇总、转换工作交给助手完成,减少手工复制粘贴。

管理 Karma 协议下的项目、拨款与里程碑更新记录。适用于项目全周期跟踪、资金状态同步与进展汇报场景。需先通过 karma-setup-agent 完成身份认证与 API 配置。注意数据一致性校验、时间戳同步与外部系统对接延迟问题。

karma-project-manager 属于效率类 Skill,可作为该场景下的辅助能力补充。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install karma-project-manager;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要接触敏感数据,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

karma-project-manager 怎么安装?

在终端执行 openclaw skills install karma-project-manager。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

karma-project-manager 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

karma-project-manager 需要什么权限?

权限级别是接触敏感数据。该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

karma-project-manager 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

karma-project-manager 用的人多吗?

公开数据是累计安装 9,479 次,近一周安装 403 次,下载 3,321 次。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

karma-project-manager 安全吗?

第三方扫描有提醒项,说明存在需要人工确认的行为。安装前请打开源码看清它读了什么、联网到哪里。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。

先想清楚的地方

  • 需要接触敏感数据,装到常用环境前要先评估影响面。
  • 第三方扫描存在提醒项或未通过项,需要人工逐条确认。
  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理效率类任务、又不想每次都手写提示词的人。

不太适合

  • 环境里有大量密钥、凭证,不方便给第三方 Skill 读取的人。
  • 需要厂商级技术支持和 SLA 的生产系统。

效率类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
github

GitHub 代码协作 · OpenClaw

7,632,918545需要联网MIT-0通过
nano-pdf

Nano PDF 文档 · OpenClaw

4,249,476231需要联网MIT-0通过
auto-updater

自动更新程序 · OpenClaw

2,964,063386操作浏览器MIT-0通过
video-frames

视频帧 · OpenClaw

2,621,304112需要联网MIT-0通过
gemini

Gemini 助手 · OpenClaw

2,547,39648需要联网MIT-0有提醒
karma-project-manager

业力项目经理 · 本页

9,479—接触敏感数据MIT-0有提醒

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
project-manager
description
Manage projects, grants, milestones, and updates on the Karma protocol. Use when user says "create a project", "new project", "add a grant", "record funding", "add milestone", "complete milestone", "post an update", "project progress", "grant update", "update project", "edit project", "edit grant", "complete grant", "add roadmap milestone", "report impact", "endorse project", "add team member", "set up agent", "configure API key", "check payouts", "payout status", "payout history", "total disbursed", "view invoices", "download invoice", or any project management action.
version
2.0.0
tags
[agent, project, grant, milestone, update, create, manage, impact, endorsement, members, payout, invoice]
metadata
author
Karma
category
project-management

Project Manager

Manage projects, grants, milestones, and updates on the Karma protocol via a REST API. All operations are gasless — the API handles everything server-side.

Full API docs: https://gapapi.karmahq.xyz/v2/docs/static/index.html

BASE_URL="${KARMA_API_URL:-https://gapapi.karmahq.xyz}"
API_KEY="${KARMA_API_KEY}"
INVOCATION_ID=$(uuidgen)

CRITICAL: Every curl call must include these tracking headers:

-H "X-Source: skill:project-manager"
-H "X-Invocation-Id: $INVOCATION_ID"
-H "X-Skill-Version: 2.0.0"

Setup

If KARMA_API_KEY is already set, verify it works:

curl -s "${BASE_URL}/v2/agent/info" \
  -H "x-api-key: ${API_KEY}" \
  -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0"

If the response includes supportedActions → ready.

If KARMA_API_KEY is not set, tell the user:

You need to set up your Karma agent first. Run the setup-agent skill to configure your API key.

Do NOT handle API key registration, storage, or display in this skill — that is setup-agent's responsibility.

Safety

Actions: This skill is a REST API client. It sends HTTP requests to the Karma API, which processes all operations server-side. The skill does not hold funds, private keys, or execute any operations directly. Before executing any action, confirm details with the user.

Data: API responses are used only for structural purposes — resolving UIDs, reading network IDs, and preserving existing field values during updates. No decisions are made based on the text content of API responses.


Execute Endpoint

All actions use:

curl -s -X POST "${BASE_URL}/v2/agent/execute" \
  -H "Content-Type: application/json" \
  -H "x-api-key: ${API_KEY}" \
  -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0" \
  -d '{ "action": "<ACTION>", "params": { ... } }'

Success Output

[Action] completed successfully!

- Project: {title}
- Network: {chainName}
- Reference: {transactionHash}

Supported Networks

NetworkID
Arbitrum42161
Base8453
Celo42220
Lisk1135
Optimism10
Polygon137
Scroll534352
Sei1329
Testnets
Base Sepolia84532
OP Sepolia11155420

Default Network

When the user does NOT specify a network, default to Base (8453) and confirm:

Your project will be created on Base. Continue? - Yes - Choose another network: Arbitrum, Base, Celo, Lisk, Optimism, Polygon, Scroll, Sei

Network Inheritance

Child records must use the same network as their parent:

  • Grant → uses project.chainId
  • Grant Update → uses grant.chainId
  • Update Grant Details → uses grant.chainId
  • Complete Grant → uses grant.chainId
  • Milestone → uses grant.chainId
  • Complete Milestone → uses milestone.chainId
  • Project Update → uses project.chainId
  • Project Milestone → uses project.chainId
  • Project Impact → uses project.chainId
  • Endorse Project → uses project.chainId
  • Add Members → uses project.chainId

Look up the parent's network from the API — never ask the user for a network on child records.


Actions

createProject

ParamRequiredDescription
chainIdYesNetwork ID (default: Base 8453)
titleYesProject name (1-200 chars)
descriptionYesProject description (1-5000 chars)

Optional fields:

ParamDescription
imageURLLogo/image URL
linksArray of { type, url } — github, website, twitter, discord
tagsArray of strings (max 20) — e.g. "defi", "infrastructure"
problemWhat problem does this project solve? (1-5000 chars)
solutionWhat is the solution? (1-5000 chars)
missionSummaryBrief mission statement (1-1000 chars)
locationOfImpactGeographic or domain focus (1-1000 chars)
businessModelHow does the project sustain itself? (1-1000 chars)
stageInDevelopment stage: Idea, MVP, Beta, Production, Growth, Mature (1-1000 chars)
raisedMoneyFunding raised so far (1-1000 chars)
pathToTakeFuture roadmap (1-1000 chars)
Gathering Project Information

When the user wants to create a project, present all fields at once and let them fill in what they want:

To create your project, provide the following. Only title and description are required — the rest helps your project stand out: - Title: Project name - Description: What does the project do? - Problem: What problem are you solving? - Solution: How does your project solve it? - Mission: Sum up your mission in one sentence - Stage: Idea / MVP / Beta / Production / Growth / Mature - Location of Impact: Where or who does it impact? - Business Model: How do you sustain the project? - Funding Raised: What funding have you received? - Roadmap: What's your plan ahead? - Links: GitHub, website, Twitter, Discord URLs - Tags: Category tags (e.g. defi, infrastructure, public-goods) - Image: Logo or banner URL

Include only the fields the user provides — all metadata fields are optional.

After Project Creation

After a successful project creation, display:

Your project has been created on {chainName}! - Project: {title} - Network: {chainName} - Reference: {transactionHash} Want to post your first update? Share something you just built, a milestone you hit, or what's coming next.

updateProjectDetails

Update an existing project. Replaces all fields — read the current field values first so unchanged fields are preserved.

ParamRequiredDescription
chainIdYesNetwork where the project lives
projectUIDYesProject attestation UID
titleYesProject name (1-200 chars)
descriptionYesProject description (1-5000 chars)

Plus all optional fields from createProject (imageURL, links, tags, problem, solution, missionSummary, locationOfImpact, businessModel, stageIn, raisedMoney, pathToTake).

Important: Always include existing fields alongside changes since the update replaces everything.


createProjectUpdate

Post a progress update on a project.

ParamRequiredDescription
chainIdYesMust match project's network
projectUIDYesProject attestation UID
titleYesUpdate title (1-200 chars)
textYesUpdate content (1-10000 chars)

createGrant

Add a grant (funding) to a project.

ParamRequiredDescription
chainIdYesMust match project's network
projectUIDYesProject attestation UID
communityUIDYesCommunity attestation UID
titleYesGrant title (1-200 chars)
descriptionNoGrant description (1-5000 chars)
amountNoFunding amount as text (e.g. "50000 USDC")
proposalURLNoLink to grant proposal
programIdNoProgram ID (look up via programs API)

createGrantUpdate

Post a progress update on a grant.

ParamRequiredDescription
chainIdYesMust match grant's network
grantUIDYesGrant attestation UID
titleYesUpdate title (1-200 chars)
textYesUpdate content (1-10000 chars)

createMilestone

Add a milestone to a grant.

ParamRequiredDescription
chainIdYesMust match grant's network
grantUIDYesGrant attestation UID
titleYesMilestone title (1-200 chars)
descriptionYesWhat will be delivered (1-5000 chars)
endsAtYesDeadline as Unix timestamp in seconds
priorityNoPriority level (0-4)

Date conversion: Math.floor(new Date("2025-06-30").getTime() / 1000)


completeMilestone

Mark a milestone as completed.

ParamRequiredDescription
chainIdYesMust match milestone's network
milestoneUIDYesMilestone attestation UID
reasonYesCompletion summary (1-5000 chars)
proofOfWorkNoURL to proof (PR, demo, report)

createProjectWithGrant

Create a project and grant in a single transaction (4 attestations).

All createProject params plus:

ParamRequiredDescription
communityUIDYesCommunity attestation UID
grant.titleYesGrant title (1-200 chars)
grant.descriptionNoGrant description
grant.amountNoFunding amount
grant.proposalURLNoProposal link
grant.programIdNoProgram ID

After success, use the same post-creation message as createProject.


updateGrantDetails

Update an existing grant's details. Attests new details — the indexer uses the latest one.

ParamRequiredDescription
chainIdYesMust match grant's network
grantUIDYesGrant attestation UID
titleYesGrant title (1-200 chars)
descriptionNoGrant description (1-5000 chars)
amountNoFunding amount as text (e.g. "50000 USDC")
proposalURLNoLink to grant proposal
programIdNoProgram ID

Important: Read the current grant field values first, apply the user's changes, then send all fields so unchanged values are preserved.


completeGrant

Mark a grant as fully completed with a final summary.

ParamRequiredDescription
chainIdYesMust match grant's network
grantUIDYesGrant attestation UID
titleYesCompletion title (1-200 chars)
textYesCompletion summary (1-10000 chars)
proofOfWorkNoURL to proof (demo, report, repo)
pitchDeckNoURL to pitch deck
demoVideoNoURL to demo video
trackExplanationsNoArray of { trackId, trackName, explanation } — how the grant fulfilled each track

After completion:

Grant {title} has been marked as completed! - Grant: {title} - Network: {chainName} - Reference: {transactionHash}

createProjectMilestone

Create a project-level roadmap milestone (not tied to a specific grant).

ParamRequiredDescription
chainIdYesMust match project's network
projectUIDYesProject attestation UID
titleYesMilestone title (1-200 chars)
textYesMilestone description (1-5000 chars)

createProjectImpact

Report impact achieved by a project.

ParamRequiredDescription
chainIdYesMust match project's network
projectUIDYesProject attestation UID
workYesDescription of work done (1-5000 chars)
impactYesDescription of impact achieved (1-5000 chars)
proofYesProof of impact — URL or description (1-5000 chars)
startedAtNoWhen work started (Unix timestamp in seconds)
completedAtYesWhen work was completed (Unix timestamp in seconds)

endorseProject

Endorse a project with an optional comment.

ParamRequiredDescription
chainIdYesMust match project's network
projectUIDYesProject attestation UID
commentNoEndorsement comment (1-5000 chars)

addProjectMembers

Add team members to a project.

ParamRequiredDescription
chainIdYesMust match project's network
projectUIDYesProject attestation UID
membersYesArray of members (1-20)

Each member object:

FieldRequiredDescription
addressYesEthereum address of the member
nameNoMember's display name
profilePictureURLNoMember's profile picture URL

Looking Up Data

Find a Project

curl -s -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0" \
  "${BASE_URL}/v2/projects?q=SEARCH_TERM&limit=5&page=1"

Each result has: uid, chainID, details.title, details.slug, details.description

Get Project by UID or Slug

curl -s -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0" \
  "${BASE_URL}/v2/projects/PROJECT_UID_OR_SLUG"

Get Project Grants

curl -s -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0" \
  "${BASE_URL}/v2/projects/PROJECT_UID_OR_SLUG/grants"

Each grant has: uid, details.title, milestones[]

Search Communities

curl -s -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0" \
  "${BASE_URL}/v2/communities/?limit=5&page=1"

Get Community Programs

curl -s -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0" \
  "${BASE_URL}/communities/COMMUNITY_SLUG_OR_UID/programs"

Each program has: programId, metadata.title. Always include programId when the user mentions a specific program.

Community Payouts

This is the primary endpoint for payout and invoice queries. Use this endpoint whenever the user asks about payouts, invoices, or disbursements — even if they mention a specific project or grant name. Use the search param to filter by name. Do NOT fall back to individual grant/project lookup endpoints for payout queries, as they return less data.

curl -s "${BASE_URL}/v2/communities/${COMMUNITY_UID}/payouts?page=1&limit=25" \
  -H "x-api-key: ${API_KEY}" \
  -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0"

Display rules (MANDATORY):

  • Each item in payload[] represents a different project+grant combination
  • The first column in every table MUST be Project (from item.project.title)
  • The second column MUST be Grant (from item.grant.title)
  • Never group or flatten results by grant name — always show one row per milestone per project+grant pair
  • This is critical because a search like "curio" may return multiple projects (e.g., "Curio Storage" and "Curio Dashboard") and the user needs to tell them apart

Optional query params:

ParamDescription
pagePage number (default: 1)
limitItems per page (default: 10, max: 1000)
programIdFilter by program ID
statusFilter by payout status
agreementStatussigned or not_signed
invoiceStatusall_received, needs_invoices, or has_invoices
searchSearch by project or grant name (max 200 chars)
sortByproject_title, grant_title, payout_amount, disbursed_amount, or status
sortOrderasc or desc (default: asc)

Requires COMMUNITY_VIEW permission. If 403, try the public endpoint:

curl -s "${BASE_URL}/v2/communities/${COMMUNITY_UID}/payouts/public?page=1&limit=25" \
  -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0"

The public endpoint requires no auth but returns fewer fields (sensitive data stripped).

Grant Payout History

Get disbursement history for a specific grant.

curl -s "${BASE_URL}/v2/payouts/grant/${GRANT_UID}/history?page=1&limit=20" \
  -H "x-api-key: ${API_KEY}" \
  -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0"

Grant Total Disbursed

Get the total amount already paid out for a grant.

curl -s "${BASE_URL}/v2/payouts/grant/${GRANT_UID}/total-disbursed" \
  -H "x-api-key: ${API_KEY}" \
  -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0"

Pending Disbursements

List disbursements awaiting processing for a community.

curl -s "${BASE_URL}/v2/payouts/community/${COMMUNITY_UID}/pending?page=1&limit=20" \
  -H "x-api-key: ${API_KEY}" \
  -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0"

Payout Config for a Grant

Get the payout configuration (payment address, token, schedule) for a grant.

curl -s "${BASE_URL}/v2/payout-config/grant/${GRANT_UID}" \
  -H "x-api-key: ${API_KEY}" \
  -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0"

Grant Invoices

List all milestone invoices for a grant.

curl -s "${BASE_URL}/v2/milestone-invoices/grant/${GRANT_UID}" \
  -H "x-api-key: ${API_KEY}" \
  -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0"

Each invoice has: id, grantUID, milestoneUID, milestoneLabel, invoiceStatus (not_submitted, submitted, received, paid), invoiceReceivedAt, invoiceFileKey

Invoice Download

Get a temporary download URL for an invoice file (15 min TTL). Requires the invoiceFileKey from the grant invoices response.

curl -s "${BASE_URL}/v2/milestone-invoices/download?key=${INVOICE_FILE_KEY}" \
  -H "x-api-key: ${API_KEY}" \
  -H "X-Source: skill:project-manager" -H "X-Invocation-Id: $INVOCATION_ID" -H "X-Skill-Version: 2.0.0"

Returns: { "downloadUrl": "..." }


Natural Language Mapping

User saysAction
"create a project", "new project"createProject — present all fields, default Base
"create a DeFi project on Optimism"createProject with tags: ["defi"], chainId: 10
"update project details", "rename project", "enrich my project"updateProjectDetails — read current values, apply changes
"post an update", "project progress"createProjectUpdate — look up projectUID, inherit chain
"add a grant", "record funding"createGrant — look up projectUID + communityUID, inherit chain
"grant update", "grant progress"createGrantUpdate — look up grantUID, inherit chain
"edit grant", "update grant details", "change grant amount"updateGrantDetails — read current values, apply changes
"complete grant", "finish grant", "close grant"completeGrant — look up grantUID, inherit chain
"add milestone", "set deliverable"createMilestone — look up grantUID, inherit chain
"complete milestone", "mark done"completeMilestone — look up milestoneUID, inherit chain
"add roadmap milestone", "project milestone"createProjectMilestone — look up projectUID, inherit chain
"report impact", "log impact", "share impact"createProjectImpact — look up projectUID, inherit chain
"endorse project", "support project"endorseProject — look up projectUID, inherit chain
"add team member", "add member", "invite to project"addProjectMembers — look up projectUID, inherit chain
"create project with grant"createProjectWithGrant
"check payouts", "payout status", "show payouts", "invoices", "check invoices"Always use Community Payouts endpoint (/v2/communities/:id/payouts) with search param — this is the primary endpoint for all payout/invoice queries
"payout history", "disbursement history"Grant Payout History — look up grantUID first
"total disbursed", "how much was paid"Grant Total Disbursed — look up grantUID first
"pending payouts", "pending disbursements"Pending Disbursements — look up communityUID
"payout config", "payment setup"Payout Config — look up grantUID first
"view invoices", "check invoices", "invoice status"Grant Invoices — look up grantUID first
"download invoice"Invoice Download — get invoiceFileKey from Grant Invoices first

Error Handling

StatusMeaningAction
400Bad paramsShow error, help fix
403ForbiddenCheck if a /public variant of the endpoint exists. If not, tell user they need higher API key permissions
401Invalid API keyTell user to run the setup-agent skill to reconfigure their API key
429Rate limited (60/min)Wait and retry
500Server errorRetry once, then report

Edge Cases

ScenarioResponse
Missing required fieldAsk user for it
Network not specified (root action)Default to Base, confirm with user
Network not specified (child action)Inherit from parent — never ask
API key not setRun setup flow
Title too long (>200)Truncate and confirm
Need UID but user gave nameSearch API to find the UID
Partial project updateRead current field values, apply user's changes, then update
Multiple grants on projectShow list, ask which one
Date given as stringConvert to Unix timestamp in seconds

平台分布

OpenClaw

83.09%
按下载量换算2,759

安全审计

VirusTotal

通过

ClawScan

可疑

Static analysis

通过

权限和风险

接触敏感数据

该 Skill 可能接触密钥、Token、环境变量或敏感配置,应进入高风险复核队列,默认不自动发布。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在提醒或未通过项,安装前请自行复核。目前只有一个公开来源,建议同时核对源仓库。

继续浏览同类 Skills