AgentSkillsCN

ace-tool

借助 Exa API,实现高精度的语义搜索与内容检索。适用场景包括:(1) 需要深入理解语义的深度研究;(2) 查找代码文档与示例;(3) 公司/专业人士信息调研;(4) 依托 AI 的综合性研究任务;(5) 提取 URL 内容并生成结构化输出。触发关键词包括:“研究”、“查找论文”、“代码示例”、“公司信息”、“LinkedIn 个人主页”、“深度分析”。区别在于:Exa 在语义/神经网络搜索方面表现卓越,而 grok-search 则更擅长实时新闻与通用网络内容的快速检索。

SKILL.md
--- frontmatter
name: ace-tool
description: |
  Semantic codebase search and prompt enhancement via standalone CLI. Use when: (1) Semantic code search with natural language queries, (2) Prompt enhancement with codebase context, (3) Before grep/find/glob operations for better accuracy, (4) Complex requirements clarification, (5) Large codebase navigation. Triggers: "search context", "enhance prompt", "find code that", "clarify requirements". IMPORTANT: Always use ace-tool BEFORE grep/find/glob for semantic-level code location.

ACE-Tool - Semantic Code Search & Prompt Enhancement

High-performance semantic search and AI-powered prompt enhancement. Standalone CLI (no MCP dependency).

Execution Methods

bash
# Prerequisites: pip install httpx tenacity
# Environment: ACE_API_URL, ACE_API_TOKEN (optional for local fallback)

# Search codebase with natural language
python scripts/ace_cli.py search_context -p /path/to/project -q "function that handles authentication"

# Enhance prompt (interactive mode - default, opens browser)
python scripts/ace_cli.py enhance_prompt -p "implement login feature" -H "User: what auth method?\nAssistant: JWT"

# Enhance prompt (non-interactive, JSON output)
python scripts/ace_cli.py enhance_prompt --no-interactive -p "implement login feature"

# Enhance prompt with specific endpoint
python scripts/ace_cli.py --endpoint claude enhance_prompt -p "implement login feature"

# Check configuration
python scripts/ace_cli.py get_config

Tool Routing Policy

Prefer ACE-Tool Over Built-in Tools

TaskAvoidUse ACE-Tool CLI
Find function by purposegrep "def func"search_context -q "function that..."
Locate feature codefind . -name "*.py"search_context -q "feature description"
Clarify requirementsManual analysisenhance_prompt -p "requirement"
Understand code flowMultiple grep/readsearch_context -q "flow description"

When to Use Built-in Tools

  • Exact string matching (known identifiers)
  • File path patterns (known naming conventions)
  • Simple text replacement

Command Reference

search_context

Search codebase using natural language descriptions.

bash
python scripts/ace_cli.py search_context -p <project_root> -q <query>

Options:
  -p, --project-root    Project root path (required)
  -q, --query           Natural language query (required)

enhance_prompt

Enhance prompts with codebase context and conversation history.

bash
python scripts/ace_cli.py [--endpoint TYPE] enhance_prompt -p <prompt> [options]

Global Options:
  --endpoint            Endpoint type: new, old, claude, openai, gemini (default: new)
  --api-url             Override API base URL
  --token               Override API token

Command Options:
  -p, --prompt          Original prompt (required)
  -H, --history         Conversation history: "User: xxx\nAssistant: yyy"
  --history-file        File containing conversation history
  --project-root        Project root path (optional)
  --no-interactive      Disable web UI, output JSON directly
  --no-browser          Don't auto-open browser, just print URL
  --port                Port for web server (default: 8765)

get_config

Show current configuration status.

bash
python scripts/ace_cli.py get_config

Interactive Enhancement

Default mode opens web UI with actions:

ButtonAction
RegenerateDiscard current, generate new enhancement from original prompt
RefineIteratively improve current version, preserving your edits
Use OriginalReturn the original prompt without enhancement
Send EnhancedConfirm and use the current enhanced prompt
CancelAbort the enhancement process

Keyboard Shortcuts: Ctrl+Enter Send | Esc Cancel

Workflow

Phase 1: Semantic Search

bash
search_context -p . -q "database connection pooling"  # Find relevant code
# Review returned file locations
# Read specific files for details

Phase 2: Prompt Enhancement

bash
enhance_prompt -p "optimize query performance"        # Opens interactive UI
# Review and refine enhanced prompt
# Use Regenerate/Refine as needed
# Send Enhanced to confirm

Error Handling

json
{"error": "error message", "status_code": 401}
ErrorRecovery
No API configuredUses local fallback for search_context
Token invalid (401)Check API token
Access denied (403)Token may be disabled
Connection timeoutRetries up to 3 times with exponential backoff
No resultsBroaden search query

Anti-Patterns

ProhibitedCorrect
Grep before semantic searchUse search_context first
Skip prompt enhancementUse enhance_prompt for complex tasks
Ignore conversation historyInclude history in enhance_prompt
Use exact match for conceptual searchUse natural language query
Always use non-interactive modeUse interactive mode for review