Token导航 LogoToken导航TokenDH.com
sniff (Sniff Dev) logo
AI代理未说明官方级别未说明来源级核验

sniff (Sniff Dev)

MCP Server

Sniff是一个基于YAML配置的本地优先AI代理工具,支持与Linear平台集成,适用于自动化代码执行和任务管理。

工具数

0

提示词数

0

GitHub Stars

7

资源数

0
AI代理TypeScriptClaudeClaude

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

caiopizzol

提供方

caiopizzol

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

Sniff-用于线性的本地优先AI代理

在您的机器上运行的声明性AI代理。比如Docker Compose for AI代理。

使用简单的YAML配置部署AI代理。代码执行保持在本地,只有webhook路由通过云。

建筑

flowchart LR
    Linear -->|webhook| Proxy[Proxy]
    CLI[Local CLI] -->|WebSocket| Proxy
    Proxy -->|forward| CLI
    CLI --> Claude[Claude Code]
    CLI --> Worktree[Git Worktree]
  • 本地优先:代理在您的计算机上运行,具有完全的代码库访问权限
  • 孤立执行:每个问题都有自己的git工作树
  • 线性制剂API:与Linear代理平台的原生集成
  • 无数据库:配置来自YAML,令牌存储在本地 ~/.sniff/

快速开始

# Install Bun if you haven't
curl -fsSL https://bun.sh/install | bash

# Clone and install
git clone https://github.com/caiopizzol/sniff
cd sniff
bun install

# Initialize config
bun run apps/cli/src/index.ts init

# Authenticate with Linear
bun run apps/cli/src/index.ts auth linear

# Start the agent
bun run apps/cli/src/index.ts start

配置

sniff.yml -代理定义(提交到git):

version: "2.0"

agents:
  - id: triage-agent
    name: Triage Agent
    label: triage # Triggered when this label is applied
    systemPrompt: |
      You are a triage agent. When assigned an issue:
      1. Analyze the issue description
      2. Explore the codebase for context
      3. Suggest next steps or solutions
    runner:
      claude:
        allowedTools:
          - Read
          - Glob
          - Grep

CLI命令

sniff init              # Create sniff.yml
sniff validate          # Validate configuration
sniff auth linear       # Authenticate with Linear (OAuth)
sniff start             # Start local agent server
sniff stop              # Stop running agent
sniff status            # Show agent status
sniff logs              # View execution logs

运作原理

  1. CLI连接 → WebSocket连接到云代理
  2. 线性webhook火灾 → 分配给代理人或贴上标签
  3. 代理转发 → 通过WebSocket将webhook路由到CLI
  4. 已创建工作树 → 用于隔离执行的Git工作树
  5. 克劳德执行 → 在系统提示和工具限制下运行
  6. 结果公布 → 代理响应出现在Linear中

项目结构

sniff/
├── apps/
│   ├── cli/              # CLI application
│   ├── proxy/            # Cloudflare Worker
│   ├── web/              # Web application
│   └── docs/             # Documentation site
├── packages/
│   ├── core/             # Shared types, env config, logger
│   ├── config/           # Zod schemas, YAML loading
│   ├── connection/       # WebSocket CLI-proxy communication
│   ├── linear/           # Webhook parsing, API client
│   ├── orchestrator/     # Server, worktree manager
│   ├── runner-claude/    # Claude Code SDK wrapper
│   └── storage/          # Filesystem storage (~/.sniff/)
└── sniff.yml             # Your agent configuration

环境变量

所有环境变量都是可选的,具有合理的默认值:

变量默认值描述
SNIFF_PROXY_URLhttps://proxy.sniff.towebhooks的代理URL
SNIFF_PORT3847本地服务器端口
LINEAR_WEBHOOK_SECRET-Webhook签名验证

令牌存储在本地 ~/.sniff/tokens/ 运行后 sniff auth.

发展

# Install dependencies
bun install

# Run CLI in development
bun run apps/cli/src/index.ts [command]

# Type check
bun run typecheck

# Lint
bun run lint

# Run tests
bun test

自托管代理(可选)

默认情况下,Sniff使用 https://proxy.sniff.to。要运行自己的代理:

cd apps/proxy
bunx wrangler deploy

然后设置 SNIFF_PROXY_URL=https://your-proxy.workers.dev 并配置Linear webhooks以指向 https://your-proxy.workers.dev/webhook/linear.

许可证

麻省理工学院

支持

目录标签

目录标签

AI代理TypeScriptClaude本地部署本地执行YAML配置Linear集成代码自动化

支持客户端

Claude

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

oauth

工具数量(toolCount,工具数)

0

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明oauth部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP