TACIT: Tracked Agent Capabilities In Types
@lampepfl
关于 TACIT: Tracked Agent Capabilities In Types
TACIT (Tracked Agent Capabilities In Types) is a safety harness for AI agents. Instead of calling tools directly, agents write code in Scala 3 with capture checking: a type system that statically tracks capabilities and enforces that agent code cannot forge access rights, cannot
基本信息
配置
工具
6`code`
-
`session_id`, `code`
-
`session_id`
-
概览
What is TACIT?
TACIT is a safety harness for AI agents that uses Scala 3's capture checking type system to statically track capabilities and enforce safety. It provides an MCP interface for use by MCP-compatible agents like Claude Code, OpenCode, and GitHub Copilot.
How to use TACIT?
Download the prebuilt release JARs (or build from source with sbt), then configure your agent to run the server with java -jar TACIT.jar --library-jar /path/to/TACIT-library.jar. Optionally disable the agent's built-in tools to route all operations through TACIT. For stateful tasks, use session tools (create_repl_session, execute_in_session, etc.).
Key features of TACIT
- Scala 3 compiler with capture checking in safe mode
- Local REPL for stateless or stateful code execution
- Capability-safe library for file, process, and network access
Classified[T]type enforces pure-only access to sensitive data- Dual LLM design: trusted local model processes classified content
- Tools:
execute_scala, session management,show_interface
Use cases of TACIT
- Sandbox agent code execution with compile-time capability enforcement
- Granularly control file system, process, and network access per session
- Prevent exfiltration of classified data (API keys, secrets) to cloud LLMs
- Run multi-step agent tasks with persistent state across interactions
FAQ from TACIT
What are the runtime requirements?
JDK 17+ is required. No local Scala installation needed—the server bundles the Scala 3 compiler and REPL.
How do I configure classified paths?
Use the --classified-paths CLI flag or the corresponding field in the JSON config file to specify comma-separated paths whose content becomes Classified[String].
How does TACIT prevent data leakage?
The Classified[T] type enforces that only pure functions can transform classified data; any attempt to send it over the network or write it to an unclassified file is rejected at compile time.
Can I run multiple stateful sessions?
Yes. Use create_repl_session to get a session ID, then execute_in_session to run code in that session. Sessions persist until deleted with delete_repl_session.
How do I disable my agent's built-in tools?
Examples are provided for Claude Code (--disallowedTools), OpenCode (permission "deny"), and GitHub Copilot (VS Code settings). This forces all operations through TACIT's sandboxed REPL.
AI 与智能体 分类下的更多 MCP 服务器
LinkedIn MCP Server
stickerdanielOpen-source MCP server for LinkedIn. Give Claude and any MCP-compatible AI agent access to profiles, companies, jobs, and messages.
MCP-NixOS - Because Your AI Assistant Shouldn't Hallucinate About Packages
utensilsMCP-NixOS - Model Context Protocol Server for NixOS resources
Sequential Thinking Multi-Agent System (MAS)
FradSerAn advanced sequential thinking process using a Multi-Agent System (MAS) built with the Agno framework and served via MCP.
MCP Manager for Claude Desktop
zueaisimple web ui to manage mcp (model context protocol) servers in the claude app
mcp-hfspace MCP Server 🤗
evalstateMCP Server to Use HuggingFace spaces, easy configuration and Claude Desktop mode.
评论