{"id":"4eecc53b-04c7-4ec5-9798-a7cdc1bdb124","slug":"kagamidigital-salt-agent-skill","name":"salt-sdk","description":"Work with Salt SDK for MPC-orchestrated blockchain transactions. Use when handling Salt SDK operations, MPC wallets, Salt accounts, blockchain transactions via Salt orchestration, account creation participation, organization invitations, or debugging Salt transaction states (propose/sign/combine/broadcast). Critical for understanding two-network model (orchestration vs destination chain) and account identity (address vs publicKey).","canonicalUrl":"https://www.xpersona.co/skill/kagamidigital-salt-agent-skill","sourceUrl":"https://github.com/KagamiDigital/salt-agent-skill","homepage":null,"source":"GITHUB_OPENCLEW","vendor":{"slug":"kagamidigital","label":"Kagamidigital","url":"https://github.com/KagamiDigital/salt-agent-skill"},"protocols":["OPENCLEW"],"capabilities":["be"],"trustScore":null,"trustConfidence":"unknown","artifactCount":0,"benchmarkCount":0,"lastRelease":null,"freshnessAt":"2026-02-24T01:57:20.707Z","freshnessLabel":"Feb 24, 2026","securityReviewed":true,"openapiReady":true,"stats":[{"label":"Trust score","value":"Unknown"},{"label":"Compatibility","value":"OpenClaw"},{"label":"Freshness","value":"Feb 24, 2026"},{"label":"Vendor","value":"Kagamidigital"},{"label":"Artifacts","value":"0"},{"label":"Benchmarks","value":"0"},{"label":"Last release","value":"Unpublished"}],"factsPreview":[{"factKey":"docs_crawl","category":"integration","label":"Crawlable docs","value":"6 indexed pages on the official domain","href":"https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar","sourceUrl":"https://github.com/login?return_to=https%3A%2F%2Fgithub.com%2Fopenclaw%2Fskills%2Ftree%2Fmain%2Fskills%2Fasleep123%2Fcaldav-calendar","sourceType":"search_document","confidence":"medium","observedAt":"2026-04-15T05:03:46.393Z","isPublic":true},{"factKey":"vendor","category":"vendor","label":"Vendor","value":"Kagamidigital","href":"https://github.com/KagamiDigital/salt-agent-skill","sourceUrl":"https://github.com/KagamiDigital/salt-agent-skill","sourceType":"profile","confidence":"medium","observedAt":"2026-02-24T19:43:14.176Z","isPublic":true},{"factKey":"protocols","category":"compatibility","label":"Protocol compatibility","value":"OpenClaw","href":"https://www.xpersona.co/api/v1/agents/kagamidigital-salt-agent-skill/contract","sourceUrl":"https://www.xpersona.co/api/v1/agents/kagamidigital-salt-agent-skill/contract","sourceType":"contract","confidence":"medium","observedAt":"2026-02-24T19:43:11.167Z","isPublic":true},{"factKey":"auth_modes","category":"compatibility","label":"Auth modes","value":"api_key","href":"https://www.xpersona.co/api/v1/agents/kagamidigital-salt-agent-skill/contract","sourceUrl":"https://www.xpersona.co/api/v1/agents/kagamidigital-salt-agent-skill/contract","sourceType":"contract","confidence":"high","observedAt":"2026-02-24T19:43:11.167Z","isPublic":true},{"factKey":"schema_refs","category":"artifact","label":"Machine-readable schemas","value":"OpenAPI or schema references published","href":"https://github.com/KagamiDigital/salt-agent-skill#input","sourceUrl":"https://www.xpersona.co/api/v1/agents/kagamidigital-salt-agent-skill/contract","sourceType":"contract","confidence":"high","observedAt":"2026-02-24T19:43:11.167Z","isPublic":true},{"factKey":"handshake_status","category":"security","label":"Handshake status","value":"UNKNOWN","href":"https://www.xpersona.co/api/v1/agents/kagamidigital-salt-agent-skill/trust","sourceUrl":"https://www.xpersona.co/api/v1/agents/kagamidigital-salt-agent-skill/trust","sourceType":"trust","confidence":"medium","observedAt":null,"isPublic":true}],"highlights":["Schema refs published","Trust evidence available"],"agentCard":{"name":"salt-sdk","description":"Work with Salt SDK for MPC-orchestrated blockchain transactions. Use when handling Salt SDK operations, MPC wallets, Salt accounts, blockchain transactions via Salt orchestration, account creation participation, organization invitations, or debugging Salt transaction states (propose/sign/combine/broadcast). Critical for understanding two-network model (orchestration vs destination chain) and account identity (address vs publicKey).","source":"GITHUB_OPENCLEW","sourceId":"github:1157470593","repository":"https://github.com/KagamiDigital/salt-agent-skill","documentation":"https://www.xpersona.co/skill/kagamidigital-salt-agent-skill/agent/kagamidigital-salt-agent-skill","protocols":["OPENCLEW"],"capabilities":["be"],"languages":["typescript"],"install":{"command":"git clone https://github.com/KagamiDigital/salt-agent-skill.git","ecosystem":"git"},"examples":[{"kind":"example","language":"javascript","snippet":"const { ethers } = require('ethers');\nconst fs = require('fs');\n\n// Generate new wallet\nconst wallet = ethers.Wallet.createRandom();\n\n// Save configuration\nconst config = {\n  privateKey: wallet.privateKey,\n  address: wallet.address,\n  mnemonic: wallet.mnemonic.phrase\n};\n\nfs.writeFileSync('.agent-wallet.json', JSON.stringify(config, null, 2));\n\nconsole.log('✅ Wallet created!');\nconsole.log('Address:', wallet.address);\nconsole.log('⚠️  SAVE YOUR MNEMONIC SECURELY!');\nconsole.log('Mnemonic:', wallet.mnemonic.phrase);"},{"kind":"example","language":"javascript","snippet":"const { Salt } = require('salt-sdk');\nconst { ethers } = require('ethers');\n\n// 1. Setup\nconst provider = new ethers.providers.JsonRpcProvider(RPC_URL);\nconst signer = new ethers.Wallet(PRIVATE_KEY, provider);\n\n// 2. Authenticate\nconst salt = new Salt({ environment: 'TESTNET' }); // or 'MAINNET'\nawait salt.authenticate(signer);\n\n// 3. Get account\nconst orgs = await salt.getOrganisations();\nconst accounts = await salt.getAccounts(orgs[0]._id);\nconst account = accounts[0];\n\n// 4. Submit transaction\nconst tx = await salt.submitTx({\n  accountId: account.id,\n  to: recipientAddress,\n  value: '0.01', // decimal string for native transfers\n  chainId: 421614, // destination chain\n  data: '0x',\n  signer: signer // MUST match orchestration chain\n});\n\n// 5. Wait for completion (ALWAYS!)\nconst result = await tx.wait();\nconsole.log('State:', result.state); // 'success' or 'failure'\n\n// 6. Extract transaction hash\nconst txHash = result.broadcastReceipt?.transactionHash;"}]}}