{ "name": "@i4ctime/q-ring", "version": "0.17.6", "mcpName": "io.github.I4cTime/q-ring", "description": "OS keychain secrets for AI coding agents, over MCP — Cursor, Kiro, Claude Code. Native vault storage, policy-governed access, audit log.", "type": "module", "bin": { "qring": "dist/index.js", "qring-mcp": "dist/mcp.js" }, "main": "./dist/mcp.js", "files": [ "dist", "assets", "README.md", "LICENSE" ], "scripts": { "build": "node scripts/build-dashboard-client.mjs && tsup", "build:dashboard": "node scripts/build-dashboard-client.mjs", "dev": "tsup --watch", "typecheck": "tsc --noEmit", "lint": "eslint src --max-warnings 0", "format": "prettier --write \"src/**/*.ts\" \"scripts/**/*.mjs\" \"eslint.config.mjs\"", "test": "vitest", "test:ci": "vitest run", "sync-versions": "node scripts/sync-versions.mjs", "plugin:sync": "node scripts/plugin-sync.mjs", "plugin:sync:kiro": "node scripts/plugin-sync-kiro.mjs", "plugin:sync:claude": "node scripts/plugin-sync-claude.mjs", "plugin:gen-skills": "node scripts/plugin-generate-skills.mjs", "check:parity": "node scripts/check-plugin-parity.mjs && node scripts/plugin-generate-skills.mjs --check", "build:mcpb": "node scripts/build-mcpb.mjs", "publish:smithery": "node scripts/smithery-publish.mjs", "docs:publish-log": "node scripts/append-changelog-to-publish-log.mjs", "release:prepare": "node scripts/prepare-release.mjs", "prepublishOnly": "pnpm run build && pnpm run sync-versions" }, "keywords": [ "keyring", "secrets", "secrets-manager", "secret-management", "mcp", "mcp-server", "modelcontextprotocol", "cursor", "claude", "claude-code", "kiro", "keychain", "credential", "dotenv", "api-keys", "ai-agents", "devtools", "security" ], "license": "AGPL-3.0-only", "packageManager": "pnpm@10.32.1", "engines": { "node": ">=18" }, "repository": { "type": "git", "url": "git+https://github.com/I4cTime/q-ring.git" }, "bugs": { "url": "https://github.com/I4cTime/q-ring/issues" }, "homepage": "https://qring.i4c.studio", "dependencies": { "@modelcontextprotocol/sdk": "^1.30.0", "@napi-rs/keyring": "^1.3.0", "commander": "^15.0.0", "ipaddr.js": "^1.9.1", "zod": "^4.6.5" }, "devDependencies": { "@eslint/js": "^10.0.1", "@types/node": "^26.6.1", "esbuild": "^0.28.2", "eslint": "^10.10.0", "htm": "^3.1.1", "preact": "^10.29.8", "prettier": "^3.9.6", "tsup": "^8.5.1", "typescript": "^6.0.3", "typescript-eslint": "^8.70.0", "vite": "8.1.4", "vitest": "^4.1.11" }, "pnpm": { "overrides": { "picomatch": ">=4.0.4", "path-to-regexp": ">=8.4.0", "hono": ">=4.13.5", "@hono/node-server": ">=2.0.10", "vite": "8.1.4", "qs": ">=6.16.0", "ip-address": ">=10.2.2", "fast-uri": ">=3.1.6 <4", "esbuild": ">=0.28.1", "postcss": ">=8.5.18", "nanoid": ">=3.3.18", "js-yaml": ">=4.2.0", "brace-expansion": ">=5.0.9" } } }