magi-code 0.64.0

Repository-aware CLI coding agent for terminal work
Documentation
pub(crate) mod arg_key {
    pub(crate) const PATH: &str = "path";
    pub(crate) const INCLUDE_DIRECTORIES: &str = "include_directories";
    pub(crate) const PROMPT: &str = "prompt";
    pub(crate) const PATHS: &str = "paths";
    pub(crate) const OFFSET: &str = "offset";
    pub(crate) const LIMIT: &str = "limit";
    pub(crate) const LINE: &str = "line";
    pub(crate) const COLUMN: &str = "column";
    pub(crate) const INCLUDE_DECLARATION: &str = "include_declaration";
    pub(crate) const COMMAND: &str = "command";
    pub(crate) const CMD: &str = "cmd";
    pub(crate) const TIMEOUT: &str = "timeout";
    pub(crate) const CONTENT: &str = "content";
    pub(crate) const INPUT: &str = "input";
    pub(crate) const PATTERN: &str = "pattern";
    pub(crate) const LANGUAGE: &str = "language";
    pub(crate) const REWRITE: &str = "rewrite";
    pub(crate) const CONTEXT: &str = "context";
    pub(crate) const KIND: &str = "kind";
    pub(crate) const TASKS: &str = "tasks";
    pub(crate) const IDENTITY: &str = "identity";
    pub(crate) const CONCURRENCY: &str = "concurrency";
    pub(crate) const QUERY: &str = "query";
    pub(crate) const QUERIES: &str = "queries";
    pub(crate) const NUM_RESULTS: &str = "numResults";
    pub(crate) const INCLUDE_CONTENT: &str = "includeContent";
    pub(crate) const RECENCY_FILTER: &str = "recencyFilter";
    pub(crate) const DOMAIN_FILTER: &str = "domainFilter";
    pub(crate) const MAX_TOKENS: &str = "maxTokens";
    pub(crate) const MODE: &str = "mode";
    pub(crate) const CONNECT_URL: &str = "connectUrl";
    pub(crate) const IGNORE_HTTPS_ERRORS: &str = "ignoreHttpsErrors";
}

pub(crate) mod display_label {
    pub(crate) const STATUS: &str = "STATUS";
    pub(crate) const PATH: &str = "PATH";
    pub(crate) const PATHS: &str = "PATHS";
    pub(crate) const OFFSET: &str = "OFFSET";
    pub(crate) const LIMIT: &str = "LIMIT";
    pub(crate) const COMMAND: &str = "COMMAND";
    pub(crate) const TIMEOUT: &str = "TIMEOUT";
    pub(crate) const EXIT_CODE: &str = "EXIT_CODE";
    pub(crate) const TIMED_OUT: &str = "TIMED_OUT";
    pub(crate) const CLEANUP_WARNING: &str = "CLEANUP_WARNING";
    pub(crate) const CONTENT_BYTES: &str = "CONTENT_BYTES";
    pub(crate) const PATTERN: &str = "PATTERN";
    pub(crate) const LANGUAGE: &str = "LANGUAGE";
    pub(crate) const REWRITE: &str = "REWRITE";
    pub(crate) const CONTEXT: &str = "CONTEXT";
    pub(crate) const ENGINE: &str = "ENGINE";
    pub(crate) const KIND: &str = "KIND";
    pub(crate) const TOTAL_MATCHED: &str = "TOTAL_MATCHED";
    pub(crate) const INDEX_READY: &str = "INDEX_READY";
    pub(crate) const FILES: &str = "FILES";
    pub(crate) const DIRECTORIES: &str = "DIRECTORIES";
    pub(crate) const TASK_COUNT: &str = "TASK_COUNT";
    pub(crate) const TASK_IDS: &str = "TASK_IDS";
    pub(crate) const IDENTITIES: &str = "IDENTITIES";
    pub(crate) const TOTAL_TOKENS: &str = "TOTAL_TOKENS";
    pub(crate) const CONCURRENCY: &str = "CONCURRENCY";
    pub(crate) const QUERY: &str = "QUERY";
    pub(crate) const QUERY_COUNT: &str = "QUERY_COUNT";
    pub(crate) const RESULTS: &str = "RESULTS";
    pub(crate) const INCLUDE_CONTENT: &str = "INCLUDE_CONTENT";
    pub(crate) const TRUNCATED: &str = "TRUNCATED";
    pub(crate) const PROVIDER: &str = "PROVIDER";
    pub(crate) const MODEL: &str = "MODEL";
    pub(crate) const MEDIA_TYPE: &str = "MEDIA_TYPE";
    pub(crate) const IMAGE_BYTES: &str = "IMAGE_BYTES";
    pub(crate) const MODE: &str = "MODE";
    pub(crate) const ACTION: &str = "ACTION";
    pub(crate) const CONNECT_URL: &str = "CONNECT_URL";
    pub(crate) const IGNORE_HTTPS_ERRORS: &str = "IGNORE_HTTPS_ERRORS";
    pub(crate) const SCREENSHOT_PATH: &str = "SCREENSHOT_PATH";
    pub(crate) const FILES_SCANNED: &str = "FILES_SCANNED";
    pub(crate) const FILES_PARSED: &str = "FILES_PARSED";
    pub(crate) const SYMBOLS: &str = "SYMBOLS";
    pub(crate) const REFERENCES: &str = "REFERENCES";
    pub(crate) const DIAGNOSTICS: &str = "DIAGNOSTICS";
}

pub(crate) mod metadata_key {
    pub(crate) const URL: &str = "url";
    pub(crate) const STATUS: &str = "status";
    pub(crate) const CONTENT_TYPE: &str = "content_type";
    pub(crate) const TITLE: &str = "title";
    pub(crate) const PATH: &str = "path";
    pub(crate) const PATHS: &str = "paths";
    pub(crate) const OFFSET: &str = "offset";
    pub(crate) const LIMIT: &str = "limit";
    pub(crate) const TRUNCATED: &str = "truncated";
    pub(crate) const MODEL: &str = "model";
    pub(crate) const MEDIA_TYPE: &str = "media_type";
    pub(crate) const IMAGE_BYTES: &str = "image_bytes";
    pub(crate) const PROMPT_CHARS: &str = "prompt_chars";
    pub(crate) const TOTAL_LINES: &str = "total_lines";
    pub(crate) const BYTES: &str = "bytes";
    pub(crate) const BYTE_LIMIT: &str = "byte_limit";
    pub(crate) const LINE_LIMIT: &str = "line_limit";
    pub(crate) const EXIT_CODE: &str = "exit_code";
    pub(crate) const TIMED_OUT: &str = "timed_out";
    pub(crate) const STDOUT: &str = "stdout";
    pub(crate) const STDERR: &str = "stderr";
    pub(crate) const STDOUT_TRUNCATED: &str = "stdout_truncated";
    pub(crate) const STDERR_TRUNCATED: &str = "stderr_truncated";
    pub(crate) const STDOUT_LIMIT_BYTES: &str = "stdout_limit_bytes";
    pub(crate) const STDERR_LIMIT_BYTES: &str = "stderr_limit_bytes";
    pub(crate) const CLEANUP_WARNING: &str = "cleanup_warning";
    pub(crate) const ENGINE: &str = "engine";
    pub(crate) const LANGUAGE: &str = "language";
    pub(crate) const REWRITE: &str = "rewrite";
    pub(crate) const MATCHES_RETURNED: &str = "matches_returned";
    pub(crate) const TOTAL_MATCHED: &str = "total_matched";
    pub(crate) const INDEX_READY: &str = "index_ready";
    pub(crate) const FILES_SCANNED: &str = "files_scanned";
    pub(crate) const BYTES_SCANNED: &str = "bytes_scanned";
    pub(crate) const LIMIT_REASON: &str = "limit_reason";
    pub(crate) const SKILL: &str = "skill";
    pub(crate) const KIND: &str = "kind";
    pub(crate) const REFERENCE: &str = "reference";
    pub(crate) const SUMMARY: &str = "summary";
    pub(crate) const TOTAL: &str = "total";
    pub(crate) const COMPLETED: &str = "completed";
    pub(crate) const FAILED: &str = "failed";
    pub(crate) const TOTAL_TOKENS: &str = "total_tokens";
    pub(crate) const FILES: &str = "files";
    pub(crate) const DIRECTORIES: &str = "directories";
    pub(crate) const SUCCEEDED: &str = "succeeded";
    pub(crate) const CONCURRENCY: &str = "concurrency";
    pub(crate) const PROVIDER: &str = "provider";
    pub(crate) const QUERY: &str = "query";
    pub(crate) const QUERY_COUNT: &str = "query_count";
    pub(crate) const TOTAL_RESULTS: &str = "total_results";
    pub(crate) const RESULTS: &str = "results";
    pub(crate) const INCLUDE_CONTENT: &str = "include_content";
    pub(crate) const TIMEOUT: &str = "timeout";
    pub(crate) const RATE_LIMITED: &str = "rate_limited";
    pub(crate) const MAX_TOKENS: &str = "max_tokens";
    pub(crate) const CHAR_BUDGET: &str = "char_budget";
    pub(crate) const ACTION: &str = "action";
    pub(crate) const COMMAND: &str = "command";
    pub(crate) const MODE: &str = "mode";
    pub(crate) const CONNECT_URL: &str = "connect_url";
    pub(crate) const IGNORE_HTTPS_ERRORS: &str = "ignore_https_errors";
    pub(crate) const SCREENSHOT_PATH: &str = "screenshot_path";
    pub(crate) const FILES_PARSED: &str = "files_parsed";
    pub(crate) const SYMBOLS: &str = "symbols";
    pub(crate) const REFERENCES: &str = "references";
    pub(crate) const LANGUAGES: &str = "languages";
    pub(crate) const DIAGNOSTIC_COUNT: &str = "diagnostic_count";
    pub(crate) const LSP_ENABLED: &str = "lsp_enabled";
}

pub(crate) mod summary_metadata_label {
    pub(crate) const BYTES: &str = "bytes";
    pub(crate) const EDIT_COUNT: &str = "edit_count";
    pub(crate) const EXIT_CODE: &str = "exit_code";
    pub(crate) const IDENTITIES: &str = "identities";
    pub(crate) const LIMIT: &str = "limit";
    pub(crate) const LANGUAGE: &str = "language";
    pub(crate) const MATCHES_RETURNED: &str = "matches_returned";
    pub(crate) const OFFSET: &str = "offset";
    pub(crate) const OUTPUT_LINES: &str = "output_lines";
    pub(crate) const QUERY: &str = "query";
    pub(crate) const FILES: &str = "files";
    pub(crate) const PATH: &str = "path";
    pub(crate) const TASKS: &str = "tasks";
    pub(crate) const TOTAL_TOKENS: &str = "total_tokens";
    pub(crate) const TIMED_OUT: &str = "timed_out";
    pub(crate) const TIMEOUT: &str = "timeout";
}

pub(crate) mod tool_name {
    pub(crate) const READ: &str = "read";
    pub(crate) const VIEW_IMAGE: &str = "view_image";
    pub(crate) const BASH: &str = "bash";
    pub(crate) const HASH_EDIT: &str = "hash_edit";
    pub(crate) const WRITE: &str = "write";
    pub(crate) const GREP: &str = "grep";
    pub(crate) const FIND: &str = "find";
    pub(crate) const LIST_FILES: &str = "list_files";
    pub(crate) const REPO_MAP: &str = "repo_map";
    pub(crate) const SUBAGENTS: &str = "subagents";
    pub(crate) const WEB_SEARCH: &str = "web_search";
    pub(crate) const CODE_SEARCH: &str = "code_search";
    pub(crate) const AST_GREP: &str = "ast_grep";
    pub(crate) const BROWSER: &str = "browser";
    pub(crate) const DIAGNOSTICS: &str = "diagnostics";
    pub(crate) const REFERENCES: &str = "references";
}

pub(crate) const BASH_DISPATCH_ALIASES: &[&str] = &["shell"];
pub(crate) const GREP_DISPATCH_ALIASES: &[&str] = &["ffgrep"];
pub(crate) const FIND_DISPATCH_ALIASES: &[&str] = &["fffind"];
pub(crate) const BASH_COMMAND_ARG_KEYS: &[&str] = &[arg_key::COMMAND, arg_key::CMD];
pub(crate) const REDACTED_METADATA_KEYS: &[&str] = &[
    arg_key::CONTENT,
    "oldtext",
    "newtext",
    "bearer",
    "credential",
    "x-api-key",
    "exa_api_key",
    "exa-api-key",
];