Skip to content

Agent Execution Environment

Agent Execution Environment ಎಂಬುದು Triggerfish ನ self-development capability -- agent code ಬರೆಯಬಹುದು, execute ಮಾಡಬಹುದು, output ಮತ್ತು errors ಗಮನಿಸಬಹುದು, ಸಮಸ್ಯೆಗಳನ್ನು fix ಮಾಡಬಹುದು, ಮತ್ತು ಏನಾದರೊಂದು ಕೆಲಸ ಮಾಡುವ ತನಕ iterate ಮಾಡಬಹುದಾದ first-class code workspace. ಇದು agent ಗೆ integrations build ಮಾಡಲು, ideas test ಮಾಡಲು, ಮತ್ತು ಸ್ವಂತವಾಗಿ ಹೊಸ tools ರಚಿಸಲು ಸಾಧ್ಯ ಮಾಡುತ್ತದೆ.

Plugin Sandbox ಅಲ್ಲ

Execution environment Plugin Sandbox ನಿಂದ ಮೂಲಭೂತವಾಗಿ ಭಿನ್ನ. ವ್ಯತ್ಯಾಸ ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಮುಖ್ಯ:

  • Plugin Sandbox ಅವಿಶ್ವಾಸಾರ್ಹ third-party code ನಿಂದ ವ್ಯವಸ್ಥೆಯನ್ನು ರಕ್ಷಿಸುತ್ತದೆ
  • Exec Environment agent ಗೆ ತನ್ನ ಸ್ವಂತ code ಬರೆದು, run ಮಾಡಿ, debug ಮಾಡಲು ಶಕ್ತಿ ನೀಡುತ್ತದೆ

Plugin sandbox defensive. Exec environment productive. ಇವು ವಿರುದ್ಧ ಉದ್ದೇಶ ಸೇವಿಸುತ್ತವೆ ಮತ್ತು ಭಿನ್ನ security profiles ಹೊಂದಿವೆ.

AspectPlugin SandboxAgent Exec Environment
Purposeಅವಿಶ್ವಾಸಾರ್ಹ code ನಿಂದ ವ್ಯವಸ್ಥೆ ರಕ್ಷಿಸಿAgent ಗೆ ವಸ್ತುಗಳನ್ನು build ಮಾಡಲು ಶಕ್ತಿ
Filesystemಯಾವದೂ ಇಲ್ಲ (ಸಂಪೂರ್ಣ sandboxed)Workspace directory ಮಾತ್ರ
NetworkDeclared endpoints ಮಾತ್ರPolicy-governed allow/deny lists
Package installಅನುಮತಿಸಲ್ಪಟ್ಟಿಲ್ಲಅನುಮತಿಸಲ್ಪಟ್ಟಿದೆ (npm, pip, deno add)
Execution timeಕಠಿಣ timeoutಉದಾರ timeout (configurable)
Iterationಒಂದೇ runಅಸೀಮಿತ write/run/fix loops
PersistenceEphemeralWorkspace sessions ನಾದ್ಯಂತ persist

Feedback Loop

Core quality differentiator. ಇದು Claude Code ನಂತಹ tools effective ಮಾಡುವ ಅದೇ pattern -- agent human developer ನೋಡುವ ಅದೇ ವಿಷಯ ನೋಡಲು ಅನುಮತಿಸುವ tight write/run/fix cycle.

Step 1: ಬರೆಯಿರಿ

Agent write_file ಬಳಸಿ workspace ನಲ್ಲಿ files ರಚಿಸುತ್ತದೆ ಅಥವಾ modify ಮಾಡುತ್ತದೆ. Workspace ಪ್ರಸ್ತುತ agent ಗೆ scope ಮಾಡಿದ real filesystem directory.

Step 2: Execute ಮಾಡಿ

Agent run_command ಮೂಲಕ code ಚಲಾಯಿಸುತ್ತದೆ, ಸಂಪೂರ್ಣ stdout, stderr, ಮತ್ತು exit code ಸ್ವೀಕರಿಸುತ್ತದೆ. Output ಅಡಗಿಸಲ್ಪಡುವುದಿಲ್ಲ ಅಥವಾ summarize ಮಾಡಲ್ಪಡುವುದಿಲ್ಲ. Agent terminal ನಲ್ಲಿ ನೀವು ನೋಡುವ ಅದನ್ನೇ ನೋಡುತ್ತದೆ.

Step 3: ಗಮನಿಸಿ

Agent ಪೂರ್ಣ output ಓದುತ್ತದೆ. Errors ಆದ್ದರಿಂದ, ಪೂರ್ಣ stack trace, error messages, ಮತ್ತು diagnostic output ನೋಡುತ್ತದೆ. Tests ವಿಫಲವಾದ್ದರಿಂದ, ಯಾವ tests ವಿಫಲವಾದವು ಮತ್ತು ಏಕೆ ಎಂದು ನೋಡುತ್ತದೆ.

Step 4: Fix ಮಾಡಿ

Agent ಗಮನಿಸಿದ ವಿಷಯ ಆಧಾರದ ಮೇಲೆ code edit ಮಾಡುತ್ತದೆ, ನಿರ್ದಿಷ್ಟ files update ಮಾಡಲು write_file ಅಥವಾ edit_file ಬಳಸುತ್ತದೆ.

Step 5: ಪುನರಾವರ್ತಿಸಿ

Agent ಮತ್ತೆ run ಮಾಡುತ್ತದೆ. Code ಕೆಲಸ ಮಾಡುವ ತನಕ ಈ loop ಮುಂದುವರೆಯುತ್ತದೆ -- tests pass ಮಾಡಿ, ಸರಿಯಾದ output ತಯಾರಿಸಿ, ಅಥವಾ ಹೇಳಿದ goal ಸಾಧಿಸಿ.

Step 6: Persist ಮಾಡಿ

ಕೆಲಸ ಮಾಡಿದ ನಂತರ, agent ತನ್ನ ಕೆಲಸ skill ಆಗಿ (SKILL.md + supporting files) ಉಳಿಸಬಹುದು, integration ಆಗಿ register ಮಾಡಬಹುದು, cron job ಗೆ ಸಂಪರ್ಕಿಸಬಹುದು, ಅಥವಾ tool ಆಗಿ ಲಭ್ಯ ಮಾಡಬಹುದು.

Persist step exec environment ಅನ್ನು scratchpad ಕ್ಕಿಂತ ಹೆಚ್ಚು ಮಾಡುತ್ತದೆ.

Working code ಕಣ್ಮರೆಯಾಗುವುದಿಲ್ಲ -- agent ಅದನ್ನು schedule ನಲ್ಲಿ ಚಲಿಸುವ, triggers ಗೆ ಪ್ರತಿಕ್ರಿಯಿಸುವ, ಅಥವಾ demand ನಲ್ಲಿ invoke ಮಾಡಬಹುದಾದ reusable skill ಗೆ package ಮಾಡಬಹುದು. :::

ಲಭ್ಯ Tools

ToolDescriptionOutput
write_fileWorkspace ನಲ್ಲಿ ಫೈಲ್ ಬರೆಯಿರಿ ಅಥವಾ overwrite ಮಾಡಿFile path, bytes written
read_fileWorkspace ನಿಂದ ಫೈಲ್ ವಿಷಯ ಓದಿಫೈಲ್ ವಿಷಯ string ಆಗಿ
edit_fileಫೈಲ್ ಗೆ targeted edits ಅನ್ವಯಿಸಿUpdated ಫೈಲ್ ವಿಷಯ
run_commandWorkspace ನಲ್ಲಿ shell command execute ಮಾಡಿstdout, stderr, exit code, duration
list_directoryWorkspace ನಲ್ಲಿ files ಪಟ್ಟಿ ಮಾಡಿSizes ಜೊತೆ file listing
search_filesಫೈಲ್ ವಿಷಯ ಹುಡುಕಿ (grep-like)file:line references ಜೊತೆ matching lines

Workspace ರಚನೆ

ಪ್ರತಿ agent sessions ನಾದ್ಯಂತ persist ಮಾಡುವ ಪ್ರತ್ಯೇಕ workspace directory ಪಡೆಯುತ್ತದೆ:

~/.triggerfish/workspace/
  <agent-id>/                     # Per-agent workspace
    scratch/                      # Temporary working files
    integrations/                 # Integration code being developed
      notion-sync/
        index.ts
        index_test.ts
        package.json
      salesforce-report/
        main.py
        test_main.py
    skills/                       # Skills being authored
      morning-briefing/
        SKILL.md
        briefing.ts
    .exec_history                 # Execution log for audit
  background/
    <session-id>/                 # Temporary workspace for background tasks

Workspaces agents ನಡುವೆ ಪ್ರತ್ಯೇಕ. ಒಂದು agent ಇನ್ನೊಂದು agent ನ workspace ಪ್ರವೇಶಿಸಲಾಗದು. Background tasks (cron jobs, triggers) session ಗೆ scope ಮಾಡಿದ ತಮ್ಮ ತಾತ್ಕಾಲಿಕ workspace ಪಡೆಯುತ್ತವೆ.

Integration Development Flow

Agent ಗೆ ಹೊಸ integration build ಮಾಡಲು ಕೇಳಿದಾಗ (ಉದಾಹರಣೆಗೆ, "Notion ಗೆ ಸಂಪರ್ಕಿಸಿ tasks sync ಮಾಡಿ"), agent natural development workflow ಅನುಸರಿಸುತ್ತದೆ:

  1. Explore -- API endpoints test ಮಾಡಲು, auth ತಪಾಸಿಸಲು, response shapes ಅರ್ಥಮಾಡಿಕೊಳ್ಳಲು run_command ಬಳಸುತ್ತದೆ
  2. Scaffold -- write_file ಬಳಸಿ integration code ಬರೆಯುತ್ತದೆ, ಅದರ ಜೊತೆ test ಫೈಲ್ ರಚಿಸುತ್ತದೆ
  3. Test -- run_command ಜೊತೆ tests run ಮಾಡುತ್ತದೆ, failures ನೋಡುತ್ತದೆ, iterate ಮಾಡುತ್ತದೆ
  4. Install deps -- ಅಗತ್ಯ packages ಸೇರಿಸಲು run_command ಬಳಸುತ್ತದೆ (npm, pip, deno add)
  5. Iterate -- Tests pass ಮತ್ತು integration end-to-end ಕೆಲಸ ಮಾಡುವ ತನಕ Write, run, fix loop
  6. Persist -- Skill ಆಗಿ ಉಳಿಸುತ್ತದೆ (SKILL.md metadata ಜೊತೆ ಬರೆಯುತ್ತದೆ) ಅಥವಾ cron job ಗೆ ಸಂಪರ್ಕಿಸುತ್ತದೆ
  7. Approval -- Self-authored skill PENDING_APPROVAL state ಗೆ ಪ್ರವೇಶಿಸುತ್ತದೆ; ನೀವು review ಮಾಡಿ approve ಮಾಡುತ್ತೀರಿ

Language ಮತ್ತು Runtime ಬೆಂಬಲ

Execution environment host ವ್ಯವಸ್ಥೆಯಲ್ಲಿ ಚಲಿಸುತ್ತದೆ (WASM ನಲ್ಲಿ ಅಲ್ಲ), ಬಹು runtimes ಪ್ರವೇಶ ಜೊತೆ:

Runtimeಲಭ್ಯ ViaUse Case
DenoDirect executionTypeScript/JavaScript (first-class)
Node.jsrun_command nodenpm ecosystem ಪ್ರವೇಶ
Pythonrun_command pythonData science, ML, scripting
Shellrun_command sh / run_command bashSystem automation, glue scripts

Agent ಲಭ್ಯ runtimes ಪತ್ತೆ ಮಾಡಿ ಕಾರ್ಯಕ್ಕೆ ಉತ್ತಮ ಆಯ್ಕೆ ಮಾಡಬಹುದು. Package installation ಪ್ರತಿ runtime ನ standard toolchain ಮೂಲಕ ಕೆಲಸ ಮಾಡುತ್ತದೆ.

ಭದ್ರತಾ ಗಡಿಗಳು

Exec environment plugin sandbox ಗಿಂತ ಹೆಚ್ಚು permissive, ಆದರೆ ಇನ್ನೂ ಪ್ರತಿ ಹಂತದಲ್ಲಿ policy-controlled.

Policy ಸಂಯೋಜನೆ

  • ಪ್ರತಿ run_command call command ಅನ್ನು context ಆಗಿ PRE_TOOL_CALL hook fire ಮಾಡುತ್ತದೆ
  • Execution ಮೊದಲು command allowlist/denylist ತಪಾಸಿಸಲ್ಪಡುತ್ತದೆ
  • Output capture ಮಾಡಿ POST_TOOL_RESPONSE hook ಮೂಲಕ ಹಾದು ಹೋಗುತ್ತದೆ
  • Execution ಸಮಯದಲ್ಲಿ ಪ್ರವೇಶಿಸಿದ network endpoints lineage ಮೂಲಕ track ಮಾಡಲ್ಪಡುತ್ತವೆ
  • Code classified ಡೇಟಾ ಪ್ರವೇಶಿಸಿದ್ದರಿಂದ (ಉದಾಹರಣೆಗೆ, CRM API ನಿಂದ ಓದಿದ್ದರಿಂದ), session taint escalate ಮಾಡುತ್ತದೆ
  • Execution ಇತಿಹಾಸ audit ಗಾಗಿ .exec_history ಗೆ log ಮಾಡಲ್ಪಡುತ್ತದೆ

ಕಠಿಣ ಗಡಿಗಳು

ಈ ಗಡಿಗಳನ್ನು configuration ಲೆಕ್ಕಿಸದೆ ಎಂದಿಗೂ ದಾಟಲ್ಪಡುವುದಿಲ್ಲ:

  • Workspace directory ಹೊರಗೆ ಬರೆಯಲಾಗದು
  • Denylist ನಲ್ಲಿರುವ commands execute ಮಾಡಲಾಗದು (rm -rf /, sudo, ಇತ್ಯಾದಿ)
  • ಇತರ agents ನ workspaces ಪ್ರವೇಶಿಸಲಾಗದು
  • ಎಲ್ಲ network calls policy hooks ನಿಂದ governed
  • ಎಲ್ಲ output classified ಮತ್ತು session taint ಗೆ ಕೊಡುಗೆ ನೀಡುತ್ತದೆ
  • Resource limits ಜಾರಿಗೊಳಿಸಲ್ಪಡುತ್ತವೆ: disk space, CPU time per execution, memory

SECURITY Agent ಚಲಾಯಿಸುವ ಪ್ರತಿ command PRE_TOOL_CALL hook ಮೂಲಕ

ಹಾದು ಹೋಗುತ್ತದೆ. Policy engine execution ಪ್ರಾರಂಭವಾಗುವ ಮೊದಲು command allowlist/denylist ವಿರುದ್ಧ ತಪಾಸಿಸುತ್ತದೆ. ಅಪಾಯಕರ commands deterministically blocked -- LLM ಈ ನಿರ್ಧಾರ influence ಮಾಡಲಾಗದು. :::

Enterprise ನಿಯಂತ್ರಣಗಳು

Enterprise admins exec environment ಮೇಲೆ ಹೆಚ್ಚುವರಿ ನಿಯಂತ್ರಣಗಳನ್ನು ಹೊಂದಿದ್ದಾರೆ:

  • ನಿರ್ದಿಷ್ಟ agents ಅಥವಾ roles ಗಾಗಿ exec ಸಂಪೂರ್ಣ disable ಮಾಡಿ
  • ಲಭ್ಯ runtimes ನಿರ್ಬಂಧಿಸಿ (ಉದಾಹರಣೆಗೆ, Deno ಮಾತ್ರ allow, Python ಮತ್ತು shell block)
  • Agent ಪ್ರತಿ resource limits ಹೊಂದಿಸಿ (disk quota, CPU time, memory ceiling)
  • Classification threshold ಮೀರಿದ ಎಲ್ಲ exec operations ಗೆ approval ಅಗತ್ಯಪಡಿಸಿ
  • Default dangerous-command ಪಟ್ಟಿ ಮೀರಿದ Custom command denylist