अपडेट पर वापस जाएँ
New releaseAug 7, 2026

skillscript v0.39.1

Skillscript — एजेंट वर्कफ़्लो बनाने के लिए एक छोटी घोषणात्मक भाषा। रनटाइम, कंपाइलर और CLI।

साझा करें

Skillscript

एजेंटों द्वारा लिखी गई सुरक्षित, पुन: प्रयोज्य स्वचालन।

skillscript.ai  •   दस्तावेज़ 

npm version license status

TL;DRnpm install -g skillscript-runtime && skillfile init && skillfile dashboardत्वरित आरंभ देखें।

Skillscript क्या है?

Skillscript इस प्रश्न से उभरा: यदि Makefile को बाइनरी के बजाय कौशल बनाने के लिए बनाया जाए तो वह कैसा दिखेगा? इसका उत्तर एक सीमित भाषा है, जो Make से प्रेरित है, और एक रनटाइम है जो एक एजेंट के तर्क को स्थायी, निरीक्षणीय स्वचालन में बदल देता है। एजेंट कौशल लिखता है, आप अनुमोदन करते हैं कि वह क्या कर सकता है, और यह हर बार उसी तरह चलता है।

यह उन टीमों के लिए बनाया गया है जो चाहते हैं कि एजेंट बार-बार होने वाले वर्कफ़्लो बनाएं और चलाएं, बिना उन्हें असीमित शेल एक्सेस, मनमाना पैकेज इंस्टॉलेशन, या प्रोडक्शन क्रेडेंशियल्स पर सीधा नियंत्रण दिए।

एक एजेंट एक कौशल लिखता है। एक मानव उसकी समीक्षा और अनुमोदन करता है। रनटाइम कॉन्फ़िगर किए गए कनेक्टर्स, अनुमति सूचियों और सुरक्षा नीतियों के माध्यम से इसे निष्पादित करता है।

npm install -g skillscript-runtime
skillfile init
skillfile dashboard

फिर अपने एजेंट को MCP से कनेक्ट करें: http://localhost:7878/rpc और इसे एक कौशल लिखने के लिए कहें।

इसका उपयोग क्यों करें?

एजेंट आमतौर पर नियमित कार्यों को शुरू से फिर से बनाते हैं। इससे लागत, विलंबता और व्यवहारिक विचलन बढ़ता है।

Skillscript एक एजेंट को सीखी गई प्रक्रिया को एक नामित, पुन: प्रयोज्य कलाकृति में क्रिस्टलीकृत करने देता है जिसे:

  • पूरे कार्य की पुन: योजना बनाए बिना बार-बार निष्पादित किया जा सकता है
  • मनुष्यों द्वारा निरीक्षण और संस्करणित किया जा सकता है
  • स्वीकार किए जाने से पहले मान्य किया जा सकता है
  • अनुमोदित उपकरणों, फ़ाइलों, कमांडों और क्रेडेंशियल्स तक सीमित किया जा सकता है
  • अन्य कौशलों के साथ संयोजित किया जा सकता है

Skillscript केवल ऑर्केस्ट्रेशन है। गणना उपकरणों और कनेक्टर्स के अंदर रहती है; कौशल एक छोटे घोषणात्मक व्याकरण के माध्यम से उन क्षमताओं का समन्वय करते हैं। यह बार-बार होने वाले वर्कफ़्लो में फ्रंटियर-मॉडल टोकन उपयोग को सार्थक रूप से कम कर सकता है: तर्क लागत एक बार चुकाई जाती है जब कौशल लिखा जाता है, और उसके बाद प्रत्येक रन नियतात्मक रूप से निष्पादित होता है, नियमित उप-कार्यों को सस्ते स्थानीय मॉडलों को सौंपकर।

Python या Bash क्यों नहीं?

Python और Bash कार्यान्वयन कार्य के लिए उपयोगी बने हुए हैं। जोखिम यह है कि एजेंट-लिखित स्क्रिप्ट को होस्ट तक असीमित पहुंच के साथ बिना निगरानी के चलने दिया जाए।

Skillscript उस निष्पादन सतह को संकीर्ण करता है:

  • कोई मनमाना आयात, पैकेज इंस्टॉलेशन, eval, या सबप्रोसेस एस्केप नहीं
  • बाहरी सिस्टम तक कनेक्टर-मध्यस्थ पहुंच
  • डिफ़ॉल्ट-अस्वीकार शेल और फ़ाइल सिस्टम अनुमति सूचियाँ
  • निष्पादन से पहले स्थैतिक मान्यता
  • प्रभावशाली कौशल के लिए वैकल्पिक ऑपरेटर हस्ताक्षर
  • क्रेडेंशियल्स रनटाइम द्वारा रखे जाते हैं, कौशल में एम्बेडेड नहीं

लक्ष्य स्क्रिप्ट को बदलना नहीं है। यह स्क्रिप्ट और API को उन क्षमताओं के पीछे रखना है जिन्हें ऑपरेटर स्पष्ट रूप से उजागर करता है।

एक स्केलिंग कारण भी है। मनमाना कोड की समीक्षा करने का मतलब है कि वह सब कुछ ऑडिट करना जो वह कर सकता है, जिसके लिए एक कुशल पाठक की आवश्यकता होती है। एक skillscript अपना पूर्ण प्रभाव सतह पृष्ठ पर रखता है, इसलिए अनुमोदन तब भी संभालने योग्य रहता है जब एजेंट किसी के कोड पढ़ने की तुलना में तेज़ी से लिखते हैं, और ऑपरेटर जो जानता है कि उनके सिस्टम को क्या अनुमति देनी चाहिए, वह घोषित प्रभावों के आधार पर अनुमोदन कर सकता है, न कि तर्क को फिर से पढ़कर।

एक कौशल

एक कौशल एक प्रकार का, घोषणात्मक वर्कफ़्लो है जिसमें चर, संचालन, निर्भरताएँ और एक आउटपुट टेम्पलेट होता है।

# Skill: hello
# Status: Approved
# Description: किसी को नाम से नमस्कार करें।
# Vars: WHO=world

Hello, ${WHO}!

यह एक पूर्ण, चलने योग्य कौशल है। बॉडी को इसके आउटपुट के रूप में रेंडर किया जाता है।

कौशल कनेक्टर्स को कॉल कर सकते हैं, शाखा बना सकते हैं, लूप कर सकते हैं, अन्य कौशल चला सकते हैं, घटनाओं का जवाब दे सकते हैं, और शेड्यूल पर निष्पादित कर सकते हैं:

# Skill: daily-disk-check
# Status: Approved
# Triggers: cron:"0 6 * * *"
# Autonomous: true

Snapshot written for ${NOW}.

snapshot:
    shell(command="df -h --output=source,pcent,target") -> USAGE
    file_write(
        path="/var/log/skillscript/disk-${EVENT.fired_at_unix}.txt",
        content="${USAGE}"
    )

default: snapshot

रनटाइम शेल कमांड और फ़ाइल लिखने से तब तक मना करेगा जब तक ऑपरेटर बाइनरी और पथ को अनुमति सूची में नहीं डालता।

यह कैसे काम करता है

  1. लेखन: एक MCP-कनेक्टेड एजेंट उपलब्ध उपकरणों की खोज करता है, एक कौशल लिखता है, और उसे लिंट करता है। सुरक्षित मोड में यह Draft के रूप में आता है, जब तक आप इसे अनुमोदित नहीं करते, तब तक निष्क्रिय रहता है।
  2. समीक्षा: एक मानव कौशल का निरीक्षण और अनुमोदन करता है। सुरक्षित मोड में, अनुमोदन स्वीकृत सामग्री पर ऑपरेटर-धारित कुंजी से हस्ताक्षर करता है।
  3. चलाएँ: कौशल CLI, MCP, cron, एक HTTP घटना, या किसी अन्य कौशल से निष्पादित होता है।
  4. निरीक्षण करें: रनटाइम ट्रेस, आउटपुट, विफलताएँ और अवरुद्ध संचालन रिकॉर्ड करता है।

कौशल तीन भूमिकाएँ निभा सकते हैं:

प्रकारउद्देश्य
हेडलेसस्वायत्त रूप से चलता है और आउटपुट को सिस्टम या मानव को भेजता है
संवर्धनफ्रंटियर एजेंट के लिए संदर्भ तैयार करता है
टेम्पलेटएजेंट को पालन करने की एक पुन: प्रयोज्य प्रक्रिया देता है

त्वरित आरंभ

1. रनटाइम स्थापित करें और प्रारंभ करें

npm install -g skillscript-runtime
skillfile init
skillfile dashboard --host 127.0.0.1 --port 7878

http://localhost:7878 खोलें।

--host 0.0.0.0 का उपयोग केवल तब करें जब कोई अन्य कंटेनर या मशीन रनटाइम तक पहुँचे, और उजागर इनग्रेस को उचित रूप से सुरक्षित करें।

2. अपने एजेंट में MCP सर्वर जोड़ें

{
  "mcpServers": {
    "skillscript": {
      "type": "http",
      "url": "http://localhost:7878/rpc"
    }
  }
}

3. एजेंट से एक कौशल बनाने के लिए कहें

एक कौशल लिखें जो किसी को नाम से नमस्कार करता हो।

एजेंट MCP के माध्यम से कौशल लिखता है। डैशबोर्ड या CLI में इसे अनुमोदित करें:

skillfile approve hello
skillfile execute hello

कनेक्टर और सुरक्षा

कौशल सीधे क्रेडेंशियल्स के बजाय कॉन्फ़िगर किए गए कनेक्टरों के माध्यम से बाहरी सिस्टम तक पहुँचते हैं। कनेक्टर MCP उपकरणों, डेटा स्टोरों, स्थानीय मॉडलों, एजेंट डिलीवरी चैनलों, या कस्टम रनटाइम क्षमताओं को उजागर कर सकते हैं।

महत्वपूर्ण ऑपरेटर नियंत्रण:

सेटिंगडिफ़ॉल्ट
SKILLSCRIPT_SHELL_ALLOWLISTसभी बाइनरी अस्वीकार करें
SKILLSCRIPT_FS_ALLOWLISTसभी पथ अस्वीकार करें
SKILLSCRIPT_SECURED_MODEबंद
SKILLSCRIPT_MAX_DEADLINE_SECONDSअनसेट (कोई सीमा नहीं)
SKILLSCRIPT_SUPERVISOR_SKILLअनसेट (बंद)
SKILLSCRIPT_SECRET_<NAME>अनसेट

रहस्य रनटाइम द्वारा हल किए जाते हैं और केवल अनुमोदित सिंक को पास किए जाते हैं। कौशल उनके कच्चे मूल्यों को प्रिंट या निरीक्षण नहीं कर सकते।

कॉन्फ़िगरेशन गाइड और कनेक्टर संदर्भ देखें।

सामान्य कमांड

skillfile lint <skill>
skillfile compile <skill>
skillfile execute <skill>
skillfile approve <skill>
skillfile diagram <skill>
skillfile fires <skill>
skillfile replay <trace_id>
skillfile health

विकल्पों के लिए skillfile <command> --help चलाएँ।

दस्तावेज़ीकरण

स्थिति

Skillscript pre-1.0 चरण में है। मुख्य भाषा और कनेक्टर अनुबंध स्थिर हो रहे हैं; बाहरी अपनाने और वितरण कार्य जारी है।

योगदान

बग रिपोर्ट और फीचर अनुरोध Issues के माध्यम से स्वागत हैं। व्याकरण परिवर्तन प्रस्तावित करने से पहले एक Issue खोलें ताकि डिज़ाइन पर पहले चर्चा की जा सके।

लाइसेंस

MIT. LICENSE देखें।

श्रेणियाँ