markdown-provenance
Internal skill for uploading markdown to Arweave. Invoked only via /markdown-provenance command.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Internal skill for uploading markdown to Arweave. Invoked only via /markdown-provenance command.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
| name | markdown-provenance |
| description | Internal skill for uploading markdown to Arweave. Invoked only via /markdown-provenance command. |
SECURITY: This skill should ONLY be invoked via the explicit /markdown-provenance slash command, never automatically based on conversation context.
<quick_start>
cd "${CLAUDE_PLUGIN_ROOT}"
npm run upload path/to/file.md
</quick_start>
## Step 1: Confirm User IntentBefore uploading, confirm the user explicitly requested this via /markdown-provenance command. Never auto-trigger based on conversation about Arweave or permanent storage.
Verify MP_WALLET_PATH is set:
echo $MP_WALLET_PATH
If not set, guide user through wallet setup:
# Generate wallet
npx -y arweave wallet generate > wallet.json
# Set environment variable (add to ~/.zshrc or ~/.bashrc)
export MP_WALLET_PATH="/path/to/wallet.json"
export MP_AUTHOR="Your Name" # Optional
Execute the upload script:
cd "${CLAUDE_PLUGIN_ROOT}"
npm run upload <file-path>
Share with user:
<tags_applied> The following tags are automatically added to each upload:
| Tag | Value |
|---|---|
| Content-Type | text/markdown |
| App-Name | Markdown Provenance |
| App-Version | 0.0.1 |
| Type | Attestation |
| IPFS-CID | (calculated from content) |
| Author | (from MP_AUTHOR env var or --author flag, if set) |
| File-Name | (from --fileName flag, if set) |
| Source | (from --source flag, if set) |
| </tags_applied> |
<success_criteria>
<error_handling> If MP_WALLET_PATH not set:
If wallet file not found:
If upload fails with network error:
If upload fails with insufficient funds (files >100KB):
npx arweave wallet address wallet.json
</error_handling>