
agent-vault-proxy v0.9.0
Just-in-time API कुंजियाँ AI एजेंटों के लिए - और कोई भी अन्य प्रक्रिया जिसे आप इसके माध्यम से रूट करते हैं: कॉलर को हमेशा केवल एक प्लेसहोल्डर दिखता है।
keys-on-the-wire
AI एजेंटों और किसी भी अन्य प्रक्रिया के लिए जस्ट-इन-टाइम API कुंजियाँ जिसे आप इसके माध्यम से रूट करते हैं: कॉलर को हमेशा केवल एक प्लेसहोल्डर दिखाई देता है।
पहले agent-vault-proxy। CLI अब kow है; पुराना avp कमांड इस रिलीज़ में अभी भी काम करता है और अगले मेजर में हटा दिया जाएगा (ADR-0045)।
Keys on the Wire आपको क्रेडेंशियल चुराने वालों (Shai-Hulud और इसी तरह के) और प्रॉम्प्ट-इंजेक्टेड एजेंटों द्वारा आपके रहस्य लीक करने से बचाता है। यह एक लोकल प्रॉक्सी है जो अनुरोधों के प्रवाह के दौरान वास्तविक रहस्य इंजेक्ट करती है, इसलिए एक समझौता किया गया या प्रॉम्प्ट-इंजेक्टेड एजेंट के पास चुराने के लिए कुछ भी नहीं होता।
अंदर से: एक लूपबैक HTTPS प्रॉक्सी जो Bitwarden Secrets Manager (क्लाउड या सेल्फ-होस्टेड) से क्रेडेंशियल्स को जस्ट-इन-टाइम लाती है और उन्हें आउटबाउंड अनुरोधों में इंजेक्ट करती है, इसलिए कॉल करने वाली प्रक्रिया कभी भी वास्तविक क्रेडेंशियल बाइट्स को अपने एड्रेस स्पेस में नहीं रखती।
पूरी तरह से ओपन सोर्स, जानबूझकर सरल
हर फीचर इस रिपो में Apache-2.0 के तहत है, बिना किसी पेवॉल्ड टियर, एंटरप्राइज़ एडिशन, ट्रस्टेड क्लाउड, या टेलीमेट्री के। आप पूरी चीज़ को शुरू से अंत तक (कुछ हज़ार लाइनें) पढ़ सकते हैं और इसे हमेशा चला सकते हैं।
पूरा वर्कफ़्लो एक ही कदम है: बंडल किए गए स्किल से किसी सेवा को रूट करने के लिए कहें, यह आपको Bitwarden (या आपके वॉल्ट) में पेस्ट करने के लिए एक पंक्ति बताता है, आप इसे पेस्ट करते हैं, और एजेंट ब्रोकर हो जाता है। हो गया। क्योंकि हर ब्रोकर किया गया क्रेडेंशियल एक बाइंडिंग है, कॉन्फ़िग है पूरी, ऑडिट करने योग्य सूची कि प्रत्येक एजेंट वास्तव में किन रहस्यों तक पहुँच सकता है: कुछ भी अंतर्निहित या छिपा नहीं।
लक्ष्य हर जगह AI एजेंटों के अंदर वास्तविक कुंजियों की संख्या कम करना है, लॉक-इन नहीं। यदि Keys on the Wire उपयुक्त है, तो इसका उपयोग करें; यदि विकल्पों में से कोई एक आपके सेटअप के लिए बेहतर उपयुक्त है, तो उसका उपयोग करें। कोई भी टूल जो वास्तविक रहस्य को एजेंट की मेमोरी से बाहर रखता है, एक जीत है।
इसे आज़माएँ। 10 सेकंड।
1. इंस्टॉल करें - Linux pipx, macOS brew:
pipx install 'keys-on-the-wire[bitwarden]' # [bitwarden] adds the Bitwarden backend SDK; drop it for AWS/GSM/env only
# macOS: brew install inflightsec/keys-on-the-wire/keys-on-the-wire
sudo kow setup --bws # paste your Bitwarden token — generates the CA, starts the daemon
2. स्किल इंस्टॉल करें ताकि आपका एजेंट आपके लिए बाइंडिंग लिखे:
/plugin marketplace add inflightsec/agent-vault-proxy
/plugin install avp@agent-vault-proxy
3. स्किल से किसी सेवा को ब्रोकर करने के लिए कहें - कहें "स्ट्राइप API को Keys on the Wire के माध्यम से रूट करें।" यह प्लेसहोल्डर बनाता है और BitWarden में पेस्ट करने के लिए सटीक नोट प्रिंट करता है; यह आपकी कुंजी कभी नहीं देखता।
4. रहस्य को अपने वॉल्ट में रखें - उस नोट के साथ वास्तविक कुंजी को Bitwarden Secrets Manager (या Google Secret Manager) में जोड़ें, फिर अपने एजेंट को प्रॉक्सी के माध्यम से रूट करें:
kow env && kow run claude
हो गया: एजेंट हमेशा केवल प्लेसहोल्डर भेजता है; Keys on the Wire वायर पर वास्तविक कुंजी बदल देता है।
kow run के बजाय, आप अपने एजेंट के ~/.zshrc (या किसी भी शेल rc) में प्रॉक्सी + CA वेरिएबल्स एक्सपोर्ट कर सकते हैं - विहित ब्लॉक के लिए Usage देखें। यह स्थायी है, लेकिन यह आपके पूरे शेल को Keys on the Wire के माध्यम से रूट करता है, न कि केवल उस एजेंट को जिसे यह लॉन्च करता है।
इसे काम करते देखें
अपने AI एजेंट के साथ एक रहस्य जोड़ें: कोई कॉन्फ़िग संपादन नहीं
एक नए ब्रोकर किए गए क्रेडेंशियल को ऑनबोर्ड करने का मतलब हाथ से बाइंडिंग YAML लिखना नहीं होना चाहिए। बंडल किया गया avp स्किल एक AI सहायक (Claude Code, या कोई भी एजेंट जो स्किल लोड करता है) को आपको इसके माध्यम से ले जाने देता है: आप कहते हैं "Acme API को Keys on the Wire के माध्यम से रूट करें," यह ऑथ शेप और होस्ट पूछता है, फिर आपको बताता है कि ठीक क्या जोड़ना है: रहस्य का नाम साथ में वह एनोटेशन जिसे Bitwarden Secrets Manager Notes फ़ील्ड (या Google Secret Manager avp-binding एनोटेशन, या भविष्य के बैकएंड का प्रति-रहस्य मेटाडेटा) में पेस्ट करना है। कोई कॉन्फ़िग संपादन या रीडिप्लॉय नहीं, और सहायक रहस्य को कभी नहीं देखता या संग्रहीत नहीं करता; यह प्रस्ताव रखता है, आप लागू करते हैं।
नोट स्वयं दो पंक्तियाँ हैं जिन्हें रहस्य के Notes फ़ील्ड में पेस्ट किया जाता है:
# avp-binding
api.acme.com
मार्कर लाइन ही इसे बाइंडिंग बनाती है: एक नोट जिसकी पहली पंक्ति # avp-binding नहीं है, वह वही रहता है जो वह है, एक मानवीय विवरण, कभी पार्स नहीं किया जाता (ADR-0025)। (avp-binding मार्कर और ऑन-डिस्क पथ इस रिलीज़ में पिछड़ी संगतता के लिए अपने नाम रखते हैं; वे अगले मेजर में kow पर चले जाएँगे - ADR-0045 देखें।)
स्किल इंस्टॉल करें
Claude Code (अनुशंसित) - इसे प्लगइन के रूप में इंस्टॉल करें, ताकि यह हर प्रोजेक्ट में उपलब्ध हो और /plugin marketplace update के साथ अपडेट हो:
/plugin marketplace add inflightsec/agent-vault-proxy
/plugin install avp@agent-vault-proxy
इसे /avp:avp के रूप में आमंत्रित करें, या बस कहें "Acme API को Keys on the Wire के माध्यम से रूट करें" और यह अपने आप ट्रिगर हो जाता है। (बंडल किया गया प्लगइन अभी के लिए avp नाम रखता है; इसे मार्केटप्लेस माइग्रेशन के साथ नाम बदल दिया जाएगा।)
मैनुअल (कोई भी एजेंट जो Anthropic-फ़ॉर्मेट स्किल लोड करता है) - skills/avp/ को अपने एजेंट की स्किल डायरेक्टरी में कॉपी या सिमलिंक करें; Claude Code ~/.claude/skills/ पढ़ता है। एक सिमलिंक इसे git pull पर अद्यतन रखता है:
ln -s "$PWD/skills/avp" ~/.claude/skills/avp
MCP सर्वर ब्रोकर करें
MCP सर्वर क्रेडेंशियल-लीक की तेज़ी से बढ़ती सतह हैं: प्रत्येक एक लंबे समय तक चलने वाला अपस्ट्रीम टोकन (एक GitHub PAT, एक Slack/Brave/Perplexity कुंजी) आपके क्लाइंट कॉन्फ़िग में क्लियरटेक्स्ट में रखता है, जहाँ क्लाइंट द्वारा लोड किया गया हर सर्वर इसे पढ़ सकता है। kow mcp install उस स्थायी रहस्य को एक प्लेसहोल्डर से बदल देता है और सर्वर के ईग्रेस को प्रॉक्सी के माध्यम से रूट करता है, इसलिए वास्तविक मान कभी कॉन्फ़िग में नहीं रहता:
kow mcp install github --host api.github.com --env-var GITHUB_PERSONAL_ACCESS_TOKEN \
--server-cmd "npx -y @modelcontextprotocol/server-github"
यह पेस्ट करने के लिए वॉल्ट नोट और सटीक claude mcp add --env / codex mcp add --env कमांड (प्रॉक्सी + प्रति-रनटाइम CA-ट्रस्ट + प्लेसहोल्डर env) प्रिंट करता है: वॉल्ट के लिए केवल-प्रस्ताव, रहस्य का मान कभी नहीं छुआ जाता। बंडल किया गया avp स्किल सर्वर के दस्तावेज़ों से होस्ट/हेडर/फ़ॉर्मेट प्राप्त कर सकता है और पहले आपके साथ होस्ट की पुष्टि कर सकता है। डिज़ाइन + थ्रेट मॉडल: ADR-0040।
दस्तावेज़
- क्या Keys on the Wire आपके लिए है? - यह क्या करता है, यह जानबूझकर क्या नहीं करता, क्यों, और इसे कब उपयोग करें (यदि आप मूल्यांकन कर रहे हैं तो यहाँ से शुरू करें)
- क्विकस्टार्ट - 10-मिनट की पहली रन जो एक दृश्य प्रतिस्थापन के साथ समाप्त होती है
- अवधारणाएँ - प्लेसहोल्डर, बाइंडिंग, CA, फेल-क्लोज़्ड, सरल शब्दों में
- पूर्वापेक्षाएँ - Bitwarden Secrets Manager सेटअप (यह पहले करें)
- Linux इंस्टॉल · Docker · macOS
- उपयोग - अपने एजेंट को प्रॉक्सी की ओर इंगित करना
- Linux आइसोलेशन - फाइलसिस्टम सैंडबॉक्सिंग के लिए
bubblewrapके साथ Keys on the Wire को संयोजित करना - bindings.example.yaml - पूर्ण कॉन्फ़िग स्कीमा
- avp स्किल - एक AI सहायक को अपने नोट्स/एनोटेशन बाइंडिंग लिखने दें (केवल-प्रस्ताव, कोई कॉन्फ़िग संपादन नहीं, कोई रीडिप्लॉय नहीं)
- MCP सर्वर ब्रोकर करें - बिना प्लेनटेक्स्ट क्रेडेंशियल के Claude Code / Codex MCP सर्वर चलाएँ (
kow mcp install) - आर्किटेक्चर - थ्रेट मॉडल, G1–G9 इनवेरिएंट्स, हार्डनिंग, अवशिष्ट जोखिम
- एडाप्टर आर्किटेक्चर - वॉल्ट बैकएंड (Bitwarden, Google Secret Manager, और AWS Secrets Manager आज शिप होते हैं, डेव के लिए
static) और दूसरा कैसे जोड़ें - Google Secret Manager - GSM में रहस्य रखें: सेटअप, कीलेस ऑथ, और एंड-टू-एंड परीक्षण
- तुलना - Vault Agent, Doppler,
op run,superfly/tokenizer, OneCLI, और अन्य एजेंट क्रेडेंशियल टूल्स की तुलना (जो भी फिट बैठे उसका उपयोग करें: मुद्दा अधिक एजेंटों की सुरक्षा है, लॉक-इन नहीं) - CHANGELOG · SECURITY · CONTRIBUTING · CREDITS
प्रॉक्सी कभी भी फोन-होम नहीं करता। इसके द्वारा किए जाने वाले एकमात्र आउटबाउंड कनेक्शन आपके द्वारा कॉन्फ़िगर किए गए BWS एंडपॉइंट और आपके एजेंट द्वारा कॉल किए जा रहे अपस्ट्रीम API हैं। कोई टेलीमेट्री नहीं। /var/log/agent-vault-proxy/audit.jsonl के अंतर्गत ऑडिट लॉग डिफ़ॉल्ट रूप से केवल-लोकल है; वैकल्पिक ऑफ-बॉक्स शिपिंग इसे (एक अलग साइडकार से, कभी प्रॉक्सी से नहीं) केवल आपके द्वारा चलाए और नियंत्रित किए जाने वाले कलेक्टर तक अग्रेषित करता है।
लाइसेंस
Apache-2.0: LICENSE और NOTICE देखें; एक सुरक्षा टूल के लिए स्पष्ट पेटेंट अनुदान जानबूझकर दिया गया है (ADR-0037)। हर फीचर यहाँ शिप होता है, बिना किसी ओपन-कोर, एंटरप्राइज़ टियर, या होस्टेड सेवा के। इसे फोर्क करें, शुरू से अंत तक पढ़ें, इसे हमेशा चलाएँ। 0.9.0 तक के रिलीज़ अपने मूल MIT शर्तों और agent-vault-proxy नाम के तहत उपलब्ध रहते हैं। पूर्व कला को CREDITS.md में स्वीकार किया गया है।
एक निर्भरता ओपन सोर्स नहीं है, और यह ऑप्ट-इन है। वैकल्पिक Bitwarden बैकएंड bitwarden-sdk को खींचता है, जो Bitwarden के अपने प्रोप्राइटरी SDK लाइसेंस के अंतर्गत है, Apache-2.0 नहीं। Keys on the Wire इसे कभी बंडल नहीं करता; आप इसे स्वयं इंस्टॉल करते हैं (pip install 'keys-on-the-wire[bitwarden]') केवल यदि आप उस बैकएंड का उपयोग करते हैं। डिफ़ॉल्ट इंस्टॉल और AWS Secrets Manager, Google Secret Manager, और env बैकएंड 100% ओपन सोर्स हैं।