mirror of
https://gitee.com/mateos/mateclaw.git
synced 2026-09-14 19:45:08 +08:00
140 lines
8.4 KiB
Properties
140 lines
8.4 KiB
Properties
# ==================== MateClaw i18n: en-US ====================
|
|
|
|
# --- Result Codes ---
|
|
result.success=Success
|
|
result.unauthorized=Not logged in or token expired
|
|
result.forbidden=Access denied
|
|
result.not_found=Resource not found
|
|
result.system_error=Internal server error
|
|
result.param_error=Parameter validation failed
|
|
result.agent_not_found=Agent not found
|
|
result.agent_busy=Agent is busy, please try later
|
|
result.llm_error=LLM call failed
|
|
result.tool_not_found=Tool not found
|
|
result.channel_error=Channel message sending failed
|
|
|
|
# --- Tool Descriptions ---
|
|
tool.getCurrentDateTime.desc=Get current date and time in yyyy-MM-dd HH:mm:ss format
|
|
tool.getCurrentDate.desc=Get current date in yyyy-MM-dd format
|
|
tool.getCurrentTime.desc=Get current time in HH:mm:ss format
|
|
|
|
tool.read_file.desc=Read the contents of a file. Supports line-range reading (1-based). Returns structured JSON with filePath, totalLines, readLines, content. Auto-truncates large files with continuation hints. Text files only; use extract_document_text for PDF/Office documents.
|
|
tool.read_file.param.filePath=Absolute or relative file path
|
|
tool.read_file.param.startLine=Start line number (1-based, inclusive). Omit to start from line 1
|
|
tool.read_file.param.endLine=End line number (1-based, inclusive). Omit to read to EOF or truncation limit
|
|
|
|
tool.write_file.desc=Write content to a file. Overwrites if exists, creates if not (auto-creates parent directories). Returns structured JSON with filePath, bytesWritten. Requires user approval.
|
|
tool.write_file.param.filePath=Absolute or relative file path
|
|
tool.write_file.param.content=Content to write to the file
|
|
|
|
tool.edit_file.desc=Edit file content via find-and-replace. Finds exact match of old_text and replaces with new_text. Returns structured JSON with filePath, replacements count. Requires user approval. Replaces first occurrence by default; set replaceAll=true for all.
|
|
tool.edit_file.param.filePath=Absolute or relative file path
|
|
tool.edit_file.param.oldText=Original text to find (exact match)
|
|
tool.edit_file.param.newText=Replacement text
|
|
tool.edit_file.param.replaceAll=Replace all occurrences, default false (first only)
|
|
|
|
tool.execute_shell_command.desc=Execute a shell command on the local server. For running system commands, viewing files, running scripts. Uses cmd.exe on Windows, /bin/sh on Linux/macOS. Dangerous operations trigger security approval. Returns structured result with exitCode, stdout, stderr, timedOut.
|
|
tool.execute_shell_command.param.command=Shell command to execute
|
|
tool.execute_shell_command.param.timeoutSeconds=Timeout in seconds, default 60
|
|
|
|
tool.search.desc=Search the internet for latest information. Use when querying real-time news, latest data, or uncertain facts. Supports optional freshness, language, count parameters.
|
|
tool.search.param.query=Search keywords
|
|
tool.search.param.freshness=Time range filter: day (today), week (this week), month (this month), year (this year)
|
|
tool.search.param.language=Language preference: zh-CN (Chinese), en (English)
|
|
tool.search.param.count=Max results: 1-10, default 5
|
|
|
|
tool.delegateToAgent.desc=Delegate a task to another Agent for multi-agent collaboration. Target Agent executes in an independent session and returns its final reply. Provide complete task context as the target cannot see current conversation history.
|
|
tool.delegateToAgent.param.agentName=Target Agent name (exact match)
|
|
tool.delegateToAgent.param.task=Task description with complete context information
|
|
tool.listAvailableAgents.desc=List all available Agents (enabled), including name, type, and description.
|
|
|
|
# --- Tool Error Messages ---
|
|
tool.read_file.error.not_found=File does not exist: {0}
|
|
tool.read_file.error.is_directory=Path is a directory, not a file: {0}
|
|
tool.read_file.error.not_readable=File is not readable: {0}
|
|
tool.read_file.error.start_exceeds=Start line {0} exceeds total lines {1}
|
|
tool.read_file.error.start_gt_end=Start line {0} is greater than end line {1}
|
|
tool.read_file.error.read_exception=Read file exception: {0}
|
|
tool.write_file.error.path_empty=File path cannot be empty
|
|
tool.write_file.error.is_directory=Path is an existing directory, cannot write as file: {0}
|
|
tool.write_file.error.write_exception=Write file exception: {0}
|
|
tool.edit_file.error.path_empty=File path cannot be empty
|
|
tool.edit_file.error.old_text_empty=oldText cannot be empty
|
|
tool.edit_file.error.same_text=oldText and newText are identical, no replacement needed
|
|
tool.edit_file.error.not_found=File does not exist: {0}
|
|
tool.edit_file.error.is_directory=Path is a directory, not a file: {0}
|
|
tool.edit_file.error.not_rw=File is not readable/writable: {0}
|
|
tool.edit_file.error.old_not_found=Specified oldText not found in file. Check for exact match including spaces and line breaks.
|
|
tool.edit_file.error.edit_exception=Edit file exception: {0}
|
|
tool.shell.error.timeout=Command timed out ({0} seconds), forcefully terminated
|
|
tool.shell.error.exception=Execution exception: {0}
|
|
|
|
# --- Guard Rules ---
|
|
guard.SHELL_RM_RF_ROOT.name=Recursive force delete root directory
|
|
guard.SHELL_RM_RF_ROOT.fix=Specify a concrete directory path instead of root
|
|
guard.SHELL_MKFS.name=Filesystem formatting
|
|
guard.SHELL_MKFS.fix=Verify target device and execute manually
|
|
guard.SHELL_DD_DEV.name=Direct disk write
|
|
guard.SHELL_DD_DEV.fix=Verify target device and execute manually
|
|
guard.SHELL_KILL_INIT.name=Kill init/systemd
|
|
guard.SHELL_KILL_INIT.fix=Use systemctl to manage services
|
|
guard.SHELL_CURL_PIPE_SH.name=Pipe download execution (curl)
|
|
guard.SHELL_CURL_PIPE_SH.fix=Download file first, review content, then execute
|
|
guard.SHELL_WGET_PIPE_SH.name=Pipe download execution (wget)
|
|
guard.SHELL_WGET_PIPE_SH.fix=Download file first, review content, then execute
|
|
guard.SHELL_FORK_BOMB.name=Fork Bomb
|
|
guard.SHELL_FORK_BOMB.fix=This command has no legitimate use
|
|
guard.SHELL_REVERSE_SHELL.name=Reverse Shell
|
|
guard.SHELL_REVERSE_SHELL.fix=This command may be used for remote control
|
|
guard.SHELL_RM.name=rm delete command
|
|
guard.SHELL_RM.fix=Confirm files to delete, consider using trash instead of rm
|
|
guard.SHELL_RM_RF.name=Recursive force delete
|
|
guard.SHELL_RM_RF.fix=Use rm -ri or specify exact files
|
|
guard.SHELL_RM_ROOT.name=Delete from root path
|
|
guard.SHELL_RM_ROOT.fix=Specify a concrete path
|
|
guard.SHELL_RMDIR_ROOT.name=Delete directory from root path
|
|
guard.SHELL_RMDIR_ROOT.fix=Specify a concrete path
|
|
guard.SHELL_SQL_DROP.name=SQL DROP operation
|
|
guard.SHELL_SQL_DROP.fix=Backup data before executing
|
|
guard.SHELL_SQL_TRUNCATE.name=SQL TRUNCATE operation
|
|
guard.SHELL_SQL_TRUNCATE.fix=Backup data before executing
|
|
guard.SHELL_SQL_DELETE_ALL.name=SQL unconditional DELETE
|
|
guard.SHELL_SQL_DELETE_ALL.fix=Add a WHERE clause
|
|
guard.SHELL_SQL_ALTER_DROP.name=SQL ALTER TABLE DROP
|
|
guard.SHELL_SQL_ALTER_DROP.fix=Backup data before executing
|
|
guard.SHELL_SHUTDOWN.name=System shutdown
|
|
guard.SHELL_SHUTDOWN.fix=Confirm shutdown is needed
|
|
guard.SHELL_REBOOT.name=System reboot
|
|
guard.SHELL_REBOOT.fix=Confirm reboot is needed
|
|
guard.SHELL_CHMOD_777.name=Overly permissive chmod
|
|
guard.SHELL_CHMOD_777.fix=Use minimum necessary permissions
|
|
guard.SHELL_EVAL.name=Dynamic code execution
|
|
guard.SHELL_EVAL.fix=Avoid using eval
|
|
guard.SHELL_GIT_FORCE_PUSH.name=Git force push
|
|
guard.SHELL_GIT_FORCE_PUSH.fix=Use --force-with-lease
|
|
guard.SHELL_GIT_RESET_HARD.name=Git hard reset
|
|
guard.SHELL_GIT_RESET_HARD.fix=Use git stash first
|
|
guard.SHELL_CRONTAB.name=Crontab modification
|
|
guard.SHELL_CRONTAB.fix=Confirm crontab content
|
|
guard.SHELL_AUTHORIZED_KEYS.name=SSH key modification
|
|
guard.SHELL_AUTHORIZED_KEYS.fix=Confirm SSH key changes
|
|
guard.SHELL_SUDOERS.name=Sudo privilege modification
|
|
guard.SHELL_SUDOERS.fix=Use visudo
|
|
guard.SHELL_OBFUSCATED_EXEC.name=Obfuscated code execution
|
|
guard.SHELL_OBFUSCATED_EXEC.fix=Decode and review content before executing
|
|
guard.CRED_PASSWORD_ASSIGN.name=Credential exposure
|
|
guard.CRED_PASSWORD_ASSIGN.fix=Use environment variables or secret manager
|
|
guard.CRED_AWS_KEY.name=AWS Access Key leak
|
|
guard.CRED_AWS_KEY.fix=Use IAM Role or AWS Secrets Manager
|
|
guard.CRED_PRIVATE_KEY.name=Private key leak
|
|
guard.CRED_PRIVATE_KEY.fix=Do not pass private keys in parameters
|
|
|
|
# --- WorkspacePathGuard ---
|
|
guard.path.not_allowed=Path is outside workspace boundary: {0}, allowed root: {1}
|
|
guard.path.symlink_escape=Path escapes workspace via symlink: {0}, allowed root: {1}
|
|
|
|
# --- RuntimeContext ---
|
|
context.current_time=[system-context] Current time: {0} {1} (Asia/Shanghai)
|
|
context.working_dir=[system-context] Working directory: {0}
|
|
context.working_dir_hint=You can only read/write files and execute commands within this directory and its subdirectories.
|