create-grant-update

Post a progress update on an existing grant. This creates a GrantUpdate attestation referencing the grant.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "create-grant-update" with this command: npx skills add show-karma/skills/show-karma-skills-create-grant-update

Create Grant Update

Post a progress update on an existing grant. This creates a GrantUpdate attestation referencing the grant.

See Agent API Reference for auth, base URL, and error handling.

Prerequisite

If KARMA_API_KEY is not set in the environment, invoke the /setup-agent skill first, then continue with this skill.

Required Information

Field Required Description

chainId

Yes Chain where the grant lives

grantUID

Yes The grant's attestation UID

title

Yes Update title (1-200 chars)

text

Yes Update content (1-10000 chars)

Finding the Grant UID

If the user knows the project name, search for it then fetch its grants:

Step 1: Find the project

curl -s "${BASE_URL}/v2/projects?q=PROJECT_NAME&limit=5&page=1" | python3 -c " import sys, json data = json.load(sys.stdin) for p in data.get('payload', []): d = p.get('details', {}) print(f'Title: {d.get("title", "N/A")} | Chain: {p["chainID"]} | UID: {p["uid"]}') "

Step 2: Get grants for the project

curl -s "${BASE_URL}/v2/projects/PROJECT_UID_OR_SLUG/grants" | python3 -c " import sys, json data = json.load(sys.stdin) grants = data if isinstance(data, list) else data.get('payload', data.get('data', [])) for g in grants: d = g.get('details', {}) title = d.get('title', d.get('data', {}).get('title', 'Untitled')) if isinstance(d, dict) else 'Untitled' print(f'Grant: {title} | UID: {g["uid"]}') "

Natural Language Mapping

User says Action

"post a grant update on project X" Look up project grants, ask which grant if multiple

"update grant 0xabc... with progress" Use UID directly, ask for title and text

"report progress on my Optimism grant" Look up by project + community name

"we finished phase 1 of the grant" Ask which project/grant, use as update content

Making the Request

BASE_URL="${KARMA_API_URL:-https://gapapi.karmahq.xyz}"

curl -s -X POST "${BASE_URL}/v2/agent/execute"
-H "Content-Type: application/json"
-H "x-api-key: ${KARMA_API_KEY}"
-d '{ "action": "createGrantUpdate", "params": { "chainId": 10, "grantUID": "0xgrant...uid", "title": "Phase 1 Complete", "text": "We completed all Phase 1 deliverables including..." } }'

After Success

Display the result using the standard output format. The update will be automatically indexed by the system.

Edge Cases

Scenario Response

Project has multiple grants List them and ask the user which one

Grant UID not known Help look it up via project name

No title provided Generate a sensible title from the text

Grant not found "Could not find that grant. Check the project name or provide the grant UID."

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

General

skill-creator

No summary provided by upstream source.

Repository SourceNeeds Review
General

find-funding-opportunities

No summary provided by upstream source.

Repository SourceNeeds Review
General

find-opportunities

No summary provided by upstream source.

Repository SourceNeeds Review
General

create-project-update

No summary provided by upstream source.

Repository SourceNeeds Review