Dropstone Docs

கட்டமைப்பு

Dropstone JSON கட்டமைப்பைப் பயன்படுத்துதல்.

Dropstone ஐ JSON கட்டமைப்பு கோப்பைப் பயன்படுத்தி கட்டமைக்கலாம்.


வடிவம்

Dropstone JSON மற்றும் JSONC (கருத்துக்களுடன் JSON) வடிவங்களை ஆதரிக்கிறது.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "model": "dropstone/dropstone-pro",
  "autoupdate": true,
  "server": {
    "port": 4096,
  },
}

இடங்கள்

உங்கள் கட்டமைப்பை பல்வேறு இடங்களில் வைக்கலாம் மற்றும் அவை வெவ்வேறு முன்னுரிமை வரிசையைக் கொண்டுள்ளன.

Note:

கட்டமைப்பு கோப்புகள் ஒன்றாக இணைக்கப்படுகின்றன, மாற்றப்படுவதில்லை. பின்வரும் கட்டமைப்பு இடங்களிலிருந்து அமைப்புகள் இணைக்கப்படுகின்றன. பின்னர் உள்ள கட்டமைப்புகள் முரண்பட்ட விசைகளுக்கு மட்டுமே முந்தைய கட்டமைப்புகளை மேலெழுதுகின்றன. முரண்பாடற்ற அமைப்புகள் அனைத்து கட்டமைப்புகளிலிருந்து பாதுகாக்கப்படுகின்றன.

எடுத்துக்காட்டாக, உங்கள் உலகளாவிய கட்டமைப்பு autoupdate: true ஐ அமைத்தால் மற்றும் உங்கள் திட்ட கட்டமைப்பு model: "dropstone/dropstone-pro" ஐ அமைத்தால், চূড்anto கட்டமைப்பு இரண்டு அமைப்புகளையும் உள்ளடக்கும்.


முன்னுரிமை வரிசை

கட்டமைப்பு மூலங்கள் இந்த வரிசையில் ஏற்றப்படுகின்றன (பின்னர் உள்ள மூலங்கள் முந்தைய மூலங்களை மேலெழுதுகின்றன):

  1. தொலைநிலை கட்டமைப்பு (.well-known/dropstone இலிருந்து) - संगठनात्मक இயல்புநிலைகள்
  2. உலகளாவிய கட்டமைப்பு (~/.config/dropstone/dropstone.json) - பயனர் விருப்பங்கள்
  3. தனிப்பயன் கட்டமைப்பு (DROPSTONE_CONFIG env var) - தனிப்பயன் மேலெழுதுதல்
  4. திட்ட கட்டமைப்பு (dropstone.json திட்டத்தில்) - திட்ட-குறிப்பிட்ட அமைப்புகள்
  5. .dropstone கோப்பகங்கள் - agents, commands, plugins
  6. நிர்வகிக்கப்பட்ட கட்டமைப்பு கோப்புகள் (/Library/Application Support/dropstone/ macOS இல்) - நிர்வாகி-கட்டுப்படுத்தப்பட்ட
  7. macOS நிர்வகிக்கப்பட்ட விருப்பங்கள் (MDM வழியாக .mobileconfig) - மிக உচ்ச முன்னுரிமை, பயனர்-மேலெழுதக்கூடியதல்ல

இதன் பொருள் திட்ட கட்டமைப்புகள் உலகளாவிய இயல்புநிலைகளை மேலெழுத முடியும், மற்றும் உலகளாவிய கட்டமைப்புகள் தொலைநிலை संगठनात்மक இயல்புநிலைகளை மேலெழுத முடியும். நிர்வகிக்கப்பட்ட அமைப்புகள் எல்லாவற்றையும் மேலெழுதுகின்றன.

Note:

.dropstone மற்றும் ~/.config/dropstone கோப்பகங்கள் உப-கோப்பகங்களுக்கு பன்மை பெயர்களைப் பயன்படுத்துகின்றன: agents/, commands/, modes/, plugins/, skills/, tools/. ஒருமை பெயர்கள் (எ.கா. agent/) பின்னோக்கு সামঞ்சস்யத்திற்கு ஆதரிக்கப்படுகின்றன.


தொலைநிலை

संगठनங்கள் தங்கள் டொமைனில் .well-known/dropstone endpoint வழியாக இயல்புநிலை கட்டமைப்பை வழங்கலாம். Dropstone முதல் sign-in இல் தானாக இதை பெறுகிறது அந்த संगठனத்துடன் சேர்க்கப்பட்ட பயனர்களுக்கு.

தொலைநிலை கட்டமைப்பு முதலில் ஏற்றப்படுகிறது, அடிப்படை அடுக்கு ஆக செயல்படுகிறது. மற்ற அனைத்து கட்டமைப்பு மூலங்கள் (உலகளாவிய, திட்ட) இந்த இயல்புநிலைகளை மேலெழுத முடியும்.

எடுத்துக்காட்டாக, உங்கள் संगठன MCP சர்வர்களை வழங்கினால் அவை இயல்புநிலையாக முடக்கப்பட்டிருந்தால்:

{
  "mcp": {
    "jira": {
      "type": "remote",
      "url": "https://jira.example.com/mcp",
      "enabled": false
    }
  }
}

உங்கள் உள்ளூர் கட்டமைப்பில் குறிப்பிட்ட சர்வர்களை இயக்கலாம்:

{
  "mcp": {
    "jira": {
      "type": "remote",
      "url": "https://jira.example.com/mcp",
      "enabled": true
    }
  }
}

உலகளாவிய

உங்கள் உலகளாவிய Dropstone கட்டமைப்பை ~/.config/dropstone/dropstone.json இல் வைக்கவும். பயனர்-பரந்த விருப்பங்களான மாதிரிகள் மற்றும் அனுமதிகளுக்கு உலகளாவிய கட்டமைப்பைப் பயன்படுத்தவும்.

அமர்வு-நிலை அமைப்புகளுக்கு (keybinds, scroll, mouse capture), ~/.config/dropstone/tui.json ஐப் பயன்படுத்தவும்.

உலகளாவிய கட்டமைப்பு தொலைநிலை संगठनात்मक இயல்புநிலைகளை மேலெழுதுகிறது.


திட்ட-ஆல்

உங்கள் திட்ட root இல் dropstone.json ஐ சேர்க்கவும். திட்ட கட்டமைப்பு நிலையான கட்டமைப்பு கோப்புகளுக்கு மிக உচ்ச முன்னுரிமை கொண்டுள்ளது - இது உலகளாவிய மற்றும் தொலைநிலை கட்டமைப்புகளை மேலெழுதுகிறது.

திட்ட-குறிப்பிட்ட அமர்வு அமைப்புகளுக்கு, அதன் பக்கத்தில் tui.json ஐ சேர்க்கவும்.

Tip:

திட்ட-குறிப்பிட்ட கட்டமைப்பை உங்கள் திட்டத்தின் root இல் வைக்கவும்.

Dropstone தொடங்கும் போது, இது தற்போதைய கோப்பகத்தில் அல்லது அருகிலுள்ள Git கோப்பகத்திற்கு கட்டமைப்பு கோப்பைத் தேடுகிறது.

இது Git இல் சரிபார்க்க பாதுகாப்பாக உள்ளது மற்றும் உலகளாவிய ஒன்றின் அதே schema ஐப் பயன்படுத்துகிறது.


தனிப்பயன் பாதை

DROPSTONE_CONFIG சுற்றுச்சூழல் மாறியைப் பயன்படுத்தி தனிப்பயன் கட்டமைப்பு கோப்பு பாதையைக் குறிப்பிடவும்.

export DROPSTONE_CONFIG=/path/to/my/custom-config.json
dropstone run "Hello world"

தனிப்பயன் கட்டமைப்பு முன்னுரிமை வரிசையில் உலகளாவிய மற்றும் திட்ட கட்டமைப்புகளுக்கு இடையில் ஏற்றப்படுகிறது.


நிர்வகிக்கப்பட்ட அமைப்புகள்

संगठனங்கள் பயனர்கள் மேலெழுத முடியாத கட்டமைப்பை கட்டாயப்படுத்தலாம். நிர்வகிக்கப்பட்ட அமைப்புகள் மிக உচ்ச முன்னுரிமை tier இல் ஏற்றப்படுகின்றன.

கோப்பு-அடிப்படை

கணினி நிர்வகிக்கப்பட்ட கட்டமைப்பு கோப்பகத்தில் dropstone.json அல்லது dropstone.jsonc கோப்பை வைக்கவும்:

தளம்பாதை
macOS/Library/Application Support/dropstone/
Linux/etc/dropstone/
Windows%ProgramData%\dropstone

இந்த கோப்பகங்களுக்கு எழுத நிர்வாகி/root அணுகல் தேவை, எனவே பயனர்கள் அவற்றை மாற்ற முடியாது.

macOS நிர்வகிக்கப்பட்ட விருப்பங்கள்

macOS இல், Dropstone ai.dropstone.managed விருப்பம் டொமைனிலிருந்து நிர்வகிக்கப்பட்ட விருப்பங்களைப் படிக்கிறது. MDM (Jamf, Kandji, FleetDM) வழியாக .mobileconfig ஐ பயன்படுத்தி அமைப்புகள் தானாக கட்டாயப்படுத்தப்படுகின்றன.

Dropstone இந்த பாதைகளைச் சரிபார்க்கிறது:

  1. /Library/Managed Preferences/<user>/ai.dropstone.managed.plist
  2. /Library/Managed Preferences/ai.dropstone.managed.plist

plist விசைகள் dropstone.json புலங்களுக்கு நேரடியாக map செய்யப்படுகின்றன. MDM மெட்டாடேটா விசைகள் (PayloadUUID, PayloadType, முதலியன) தானாக நீக்கப்படுகின்றன.

.mobileconfig உருவாக்குதல்

ai.dropstone.managed PayloadType ஐப் பயன்படுத்தவும். Dropstone கட்டமைப்பு விசைகள் payload dict இல் நேரடியாக செல்கின்றன:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
  "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
  <key>PayloadContent</key>
  <array>
    <dict>
      <key>PayloadType</key>
      <string>ai.dropstone.managed</string>
      <key>PayloadIdentifier</key>
      <string>com.example.dropstone.config</string>
      <key>PayloadUUID</key>
      <string>GENERATE-YOUR-OWN-UUID</string>
      <key>PayloadVersion</key>
      <integer>1</integer>
      <key>share</key>
      <string>disabled</string>
      <key>server</key>
      <dict>
        <key>hostname</key>
        <string>127.0.0.1</string>
      </dict>
      <key>permission</key>
      <dict>
        <key>*</key>
        <string>ask</string>
        <key>bash</key>
        <dict>
          <key>*</key>
          <string>ask</string>
          <key>rm -rf *</key>
          <string>deny</string>
        </dict>
      </dict>
    </dict>
  </array>
  <key>PayloadType</key>
  <string>Configuration</string>
  <key>PayloadIdentifier</key>
  <string>com.example.dropstone</string>
  <key>PayloadUUID</key>
  <string>GENERATE-YOUR-OWN-UUID</string>
  <key>PayloadVersion</key>
  <integer>1</integer>
</dict>
</plist>

uuidgen உடன் தனிப்பட்ட UUIDs உருவாக்கவும். உங்கள் संगठனத்தின் தேவைகளுடன் பொருந்த அமைப்புகளை தனிப்பயனாக்கவும்.

MDM வழியாக பயன்படுத்துதல்

  • Jamf Pro: Computers > Configuration Profiles > Upload > scope to target devices or smart groups
  • FleetDM: .mobileconfig ஐ உங்கள் gitops repo இல் mdm.macos_settings.custom_settings கீழ் சேர்க்கவும் மற்றும் fleetctl apply ஐ இயக்கவும்

ஒரு சாதனத்தில் சரிபார்ப்பு

.mobileconfig ஐ இரட்டை-கிளிக் செய்து உள்ளூரில் சோதனைக்கு நிறுவவும் (System Settings > Privacy & Security > Profiles இல் தோன்றுகிறது), பின்னர் இயக்கவும்:

dropstone debug config

அனைத்து நிர்வகிக்கப்பட்ட விருப்பம் விசைகள் தீர்க்கப்பட்ட கட்டமைப்பில் தோன்றுகின்றன மற்றும் பயனர் அல்லது திட்ட கட்டமைப்பால் மேலெழுத முடியாது.


Schema

முக்கிய கட்டமைப்பு schema dropstone.io/config.json இல் வரையறுக்கப்பட்டுள்ளது.

அமர்வு-நிலை கட்டமைப்பு (tui.json) dropstone.io/tui.json ஐப் பயன்படுத்துகிறது.

உங்கள் editor schema அடிப்படையில் சரிபார்க்க மற்றும் autocomplete செய்ய முடியும்.


அமர்வு கட்டமைப்பு

அமர்வு-நிலை அமைப்புகளுக்கு ஒரு dedicated tui.json (அல்லது tui.jsonc) கோப்பைப் பயன்படுத்தவும்: scroll behaviour, mouse capture, diff rendering, முதலியன.

{
  "$schema": "https://dropstone.io/schema/tui.json",
  "scroll_speed": 3,
  "scroll_acceleration": {
    "enabled": true
  },
  "diff_style": "auto",
  "mouse": true
}

dropstone.json இல் legacy theme, keybinds, மற்றும் அமர்வு-தொடர்புடைய விசைகள் deprecated மற்றும் சாத்தியமான போது தானாக மாற்றப்படுகின்றன.


சர்வர்

dropstone serve மற்றும் dropstone web கட்டளைகளுக்கான சர்வர் அமைப்புகளை server விருப்பத்தின் மூலம் கட்டமைக்கலாம்.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "server": {
    "port": 4096,
    "hostname": "0.0.0.0",
    "mdns": true,
    "mdnsDomain": "myproject.local",
    "cors": ["http://localhost:5173"]
  }
}

கிடைக்கும் விருப்பங்கள்:

  • port - கேட்க வேண்டிய port.
  • hostname - கேட்க வேண்டிய hostname. mdns இயக்கப்பட்டு hostname அமைக்கப்படாதபோது, 0.0.0.0 க்கு இயல்புநிலை.
  • mdns - mDNS service discovery ஐ இயக்கவும். இது நெட்வொர்க்கில் உள்ள மற்ற சாதனங்களை உங்கள் Dropstone சர்வரைக் கண்டறிய அனுமதிக்கிறது.
  • mdnsDomain - mDNS service க்கான தனிப்பயன் டொமைன் பெயர். dropstone.local க்கு இயல்புநிலை. ஒரே நெட்வொர்க்கில் பல instances இயக்குவதற்கு பயனுள்ளது.
  • cors - ব்রவுசர்-அடிப்படை client இலிருந்து HTTP சர்வரைப் பயன்படுத்தும் போது CORS க்கு அனுமதிக்க கூடுதல் origins. மதிப்புகள் முழு origins (scheme + host + optional port) ஆக இருக்க வேண்டும், எ.கா. https://app.example.com.

சர்வர் பற்றி இங்கே மேலும் அறிக.


Shell

shell விருப்பத்தைப் பயன்படுத்தி interactive terminal க்கு பயன்படுத்தப்படும் shell ஐ கட்டமைக்கலாம். பொருந்தக்கூடிய shells agent tool calls க்கும் பயன்படுத்தப்படுகின்றன.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "shell": "pwsh"
}

குறிப்பிடப்படாவிட்டால், Dropstone தானாக உங்கள் operating system அடிப்படையில் ஒரு sensible default ஐ கண்டறிந்து பயன்படுத்தும் (எ.கா. Windows இல் pwsh அல்லது cmd.exe, macOS/Linux இல் /bin/zsh அல்லது /bin/bash). நீங்கள் ஒரு absolute path அல்லது short name வழங்கலாம்.


Tools

tools விருப்பத்தின் மூலம் LLM பயன்படுத்தக்கூடிய tools ஐ நிர்வகிக்கலாம்.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "tools": {
    "write": false,
    "bash": false
  }
}

tools பற்றி இங்கே மேலும் அறிக.


மாதிரி

model விருப்பத்துடன் உங்கள் இயல்புநிலை மாதிரியை அமைக்கவும். Dropstone மூன்று tiers ஐ வழங்குகிறது:

TierModel ID
Fastdropstone/dropstone-fast
Prodropstone/dropstone-pro
Heavydropstone/dropstone-heavy
{
  "$schema": "https://dropstone.io/schema/config.json",
  "model": "dropstone/dropstone-pro"
}

variant உடன் ஒரு இயல்புநிலை reasoning depth ஐ pin செய்யவும்:

{
  "$schema": "https://dropstone.io/schema/config.json",
  "model": "dropstone/dropstone-pro",
  "variant": "high"
}

செல்லுபடியாகும் variant மதிப்புகள் low, medium, high, xhigh. முழு breakdown க்கு Models ஐ பார்க்கவும்.

small_model விருப்பம் title generation போன்ற lightweight tasks க்கான ஒரு தனி மாதிரியை கட்டமைக்கிறது. இயல்புநிலையாக Dropstone ஒரு appropriate tier ஐ தேர்ந்தெடுக்கிறது; நீங்கள் அதை explicitly override செய்யலாம்:

{
  "$schema": "https://dropstone.io/schema/config.json",
  "model": "dropstone/dropstone-pro",
  "small_model": "dropstone/dropstone-fast"
}

Agents

agent விருப்பத்தின் மூலம் குறிப்பிட்ட tasks க்கான specialized agents ஐ கட்டமைக்கலாம்.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "agent": {
    "code-reviewer": {
      "description": "Reviews code for best practices and potential issues",
      "model": "dropstone/dropstone-pro",
      "prompt": "You are a code reviewer. Focus on security, performance, and maintainability.",
      "tools": {
        // Disable file modification tools for review-only agent
        "write": false,
        "edit": false,
      },
    },
  },
}

~/.config/dropstone/agents/ அல்லது .dropstone/agents/ இல் markdown கோப்புகளைப் பயன்படுத்தி agents ஐ வரையறுக்கலாம். இங்கே மேலும் அறிக.


இயல்புநிலை agent

default_agent விருப்பத்தைப் பயன்படுத்தி இயல்புநிலை agent ஐ அமைக்கலாம். இது எந்த agent ஐ explicitly குறிப்பிடப்படாதபோது பயன்படுத்தப்படுகிறது என்பதை தீர்மானிக்கிறது.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "default_agent": "plan"
}

இயல்புநிலை agent ஒரு primary agent ஆக இருக்க வேண்டும் (ஒரு subagent அல்ல). இது "build" அல்லது "plan" போன்ற ஒரு built-in agent ஆக இருக்கலாம், அல்லது நீங்கள் வரையறுத்த custom agent. குறிப்பிட்ட agent இல்லை அல்லது ஒரு subagent ஆக இருந்தால், Dropstone ஒரு warning உடன் "build" க்கு fallback செய்யும்.

இந்த அமைப்பு அனைத்து interfaces இல் பொருந்தும்: interactive sessions, one-shot runs (dropstone run), மற்றும் GitHub Action.


கட்டளைகள்

command விருப்பத்தின் மூலம் repetitive tasks க்கான custom commands ஐ கட்டமைக்கலாம்.

{
  "$schema": "https://dropstone.io/schema/config.json",
  "command": {
    "test": {
      "template": "Run the full test suite with coverage report and show any failures.\nFocus on the failing tests and suggest fixes.",
      "description": "Run tests with coverage",
      "agent": "build",
      "model": "dropstone/dropstone-fast
Ctrl+I