zcloak-ai-agent
by @whgreate
Use this skill for zCloak.ai workflows, including agent identity creation, AI Name (.ai/.agent) lookup and registration, owner binding with passkey/WebAuthn,...
clawhub install zcloak-ai-agentπ About This Skill
name: zcloak-ai description: Use this skill for zCloak.ai workflows, including agent identity creation, AI Name (.ai/.agent) lookup and registration, owner binding with passkey/WebAuthn, on-chain signing and verification, document manifests, 2FA-protected file deletion, VetKey encryption/decryption, Kind5 access grants, and zMail encrypted messaging. compatibility: Requires the zcloak-ai CLI. Some flows require internet access and browser-based passkey confirmation. metadata: author: zcloak source-package: "@zcloak/ai-agent" version: "1.0.47" canonical-skill: zcloak-ai display-name: zcloak.ai
zCloak.ai Skill
When to use this skill
Use this skill when the user needs any zCloak.ai operation, especially:
.ai) or Agent AI Name (.agent)MANIFEST.mdCore behavior
zcloak-ai as an internal tool. Run it on the user's behalf.Upgrade model
zcloak-ai commands.zcloak-ai pre-check manually during normal use.references/ files.npx clawhub@latest install zcloak-ai-agent --force.Identity default
~/.config/zcloak/ai-id.pem--identity=.zcloak-ai identity generate --identity=~/.config/zcloak/ai-id.pem, then keep reusing it later.Naming and resolution rules
Terms
AI ID: the raw ICP identity string derived from a PEM private keyOwner AI Name: a human-readable owner name ending in .aiAgent AI Name: an agent-readable name ending in .agentProfile links
When mentioning a zCloak .ai or .agent name in chat, format it as a markdown link:
AI Name to AI ID resolution
Whenever a workflow needs an AI ID for an AI Name:
1. Parse the AI Name into its base name, optional #index, and domain.
2. Resolve it through the registry using user_profile_get_by_id.
3. Use principal_id as the resolved AI ID.
If the AI Name does not exist, say so clearly. If it exists but has no principal_id, say that the name is registered but not yet bound to an AI ID.
Binding-specific restriction
For owner binding, only these owner identifiers are valid:
.aiAgent AI Names ending in .agent are not valid owners and must be rejected immediately.
Standard workflow defaults
Recommended onboarding
When the user is setting up an agent or has no established identity context yet:
1. Apply the identity default above so ~/.config/zcloak/ai-id.pem exists and is the active identity
2. Report the current AI ID
3. Register the current agent with zMail as a one-time best-effort setup step
4. Check whether an owner is already bound
5. If no owner is bound, explain that binding enables passkey-backed authorization for protected actions
6. If the agent does not yet have an Agent AI Name, recommend registering a free Agent AI Name first
User-facing tone
References
Keep this file small. Read only the reference file needed for the current task.
references/onboarding.mdreferences/signing-and-docs.mdreferences/binding-and-delete.mdreferences/vetkey.mdreferences/zmail.mdSelection guide
identity, AI ID, pem, register, lookup, profile, .ai, or .agent:references/onboarding.md
sign, verify, post, reply, like, manifest, hash, feed, sign file, or sign folder:references/signing-and-docs.md
bind, owner, passkey, 2fa, delete prepare, or delete confirm:references/binding-and-delete.md
encrypt, decrypt, grant, revoke, kind5, private post, or backup:references/vetkey.md
send message, recv-msg, inbox, sent, sync, zmail, allow list, or block list:references/zmail.md