{"_id":"@basira-ai/eliza-plugin","name":"@basira-ai/eliza-plugin","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@basira-ai/eliza-plugin","version":"0.1.0","description":"ElizaOS plugin for the Basira trust layer — policy-gated, receipted on-chain execution for autonomous agents.","license":"ISC","main":"dist/index.js","types":"dist/index.d.ts","keywords":["solana","ai-agent","elizaos","eliza","basira","policy","trust"],"scripts":{"build":"tsc -p tsconfig.json","prepublishOnly":"yarn build"},"dependencies":{"@basira-ai/plugin-core":"^0.1.0"},"peerDependencies":{"@coral-xyz/anchor":"^0.32.1","@solana/web3.js":"^1.98.0","@elizaos/core":"^1.0.0"},"gitHead":"3dce3695d89f1bd30579194b7d706cbe8266ad2d","_id":"@basira-ai/eliza-plugin@0.1.0","_nodeVersion":"24.12.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-wSSros4vEBu/0vACoypJfghCcbAla86WEINe/uXf5nQVwfTApbHj+cSKKbMr2Y1SRktWHYADVC/7AA1/9XNiZA==","shasum":"114ba1b807a24eed76b30e150a4183482fe839f2","tarball":"https://registry.npmjs.org/@basira-ai/eliza-plugin/-/eliza-plugin-0.1.0.tgz","fileCount":4,"unpackedSize":15376,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIHhgAwHsLBMo8uv8QW+0LzB9mFkaogOaT/G+p/ejGCDHAiBfLAMDAcmautKOtIjEs01p/2AehOUlpZteEXLpugFJDA=="}]},"_npmUser":{"name":"basira","email":"startup.admin.mail@gmail.com"},"directories":{},"maintainers":[{"name":"basira","email":"startup.admin.mail@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/eliza-plugin_0.1.0_1779266275298_0.8214516742890372"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-20T08:37:55.091Z","0.1.0":"2026-05-20T08:37:55.440Z","modified":"2026-05-20T08:37:55.728Z"},"maintainers":[{"name":"basira","email":"startup.admin.mail@gmail.com"}],"description":"ElizaOS plugin for the Basira trust layer — policy-gated, receipted on-chain execution for autonomous agents.","keywords":["solana","ai-agent","elizaos","eliza","basira","policy","trust"],"license":"ISC","readme":"# @basira-ai/eliza-plugin\n\nElizaOS plugin for the **Basira** trust layer.\n\nGives an ElizaOS character policy-gated, receipted on-chain execution. When\nthe character moves SOL it fires `BASIRA_TRANSFER`, which routes through\nBasira's on-chain policy engine — every action is checked against the\nagent's rule list before any value moves, and approved actions produce an\nimmutable on-chain receipt.\n\n## Install\n\n```bash\nnpm install @basira-ai/eliza-plugin\n```\n\n## Use\n\n```ts\nimport { basiraPlugin } from \"@basira-ai/eliza-plugin\";\n\nconst character = {\n  name: \"TreasuryBot\",\n  plugins: [basiraPlugin],\n  settings: {\n    SOLANA_RPC_URL: \"https://api.devnet.solana.com\",\n    SOLANA_PRIVATE_KEY: \"[12,34,...]\"   // agent keypair, JSON byte array\n  },\n};\n```\n\n## Actions\n\n| Action | What it does |\n|---|---|\n| `BASIRA_REGISTER` | Register the agent + set its initial policy rule list. Call once. |\n| `BASIRA_TRANSFER` | Send SOL through the policy engine. Settles only if every rule passes. |\n| `BASIRA_REPLACE_POLICY` | Replace the rule list (policy-authority signed). |\n| `BASIRA_STATUS` | Report policy version, rule list, vault balance, rate-limit state. |\n\nThe plugin also registers a **provider** that injects the agent's live\npolicy into the model's context, so the character always reasons with its\ncurrent rules in view.\n\n## Rule descriptors\n\n```ts\n[\n  { type: \"MaxValue\", valueSol: 1 },\n  { type: \"AllowedActions\", actions: [\"Transfer\"] },\n  { type: \"RatePerWindow\", windowSeconds: 60, max: 5 },\n]\n```\n\nThe same rule type may appear multiple times. A transfer is rejected by the\nfirst rule it violates, and the rejection names that rule's index.\n\n## Runtime settings\n\n| Setting | Purpose |\n|---|---|\n| `SOLANA_RPC_URL` | RPC endpoint (default `http://127.0.0.1:8899`). |\n| `SOLANA_PRIVATE_KEY` | The agent's keypair as a JSON byte array. |\n\n## Example\n\n`examples/treasury-character.json` is a reference character wiring the\nplugin. `tests/plugins/eliza.test.ts` shows a runnable end-to-end wire-up\nagainst an ephemeral validator.\n","readmeFilename":"README.md","_rev":"1-efe449080b098e352dbc1f7c9885b7f9"}