manifest_version: "1.0.0"
name: file_operator
display_name: 文件操作器
description: 强大的文件系统操作工具，支持读写、搜索、下载等功能
author: Jarvis
version: "1.0.0"

type: sync
runtime: python
entry: tools/implementations/file_operator.py
timeout: 30000

config_schema:
  allowed_directories:
    type: string
    description: 允许操作的目录列表，逗号分隔
    default: ""
  max_file_size:
    type: integer
    description: 最大文件大小（字节）
    default: 10485760

commands:
  - name: read_file
    description: |
      读取指定路径文件的内容。支持 PDF、DOCX、XLSX 等格式自动解析。
      参数:
      - filePath (必需): 文件绝对路径
      - encoding (可选): 编码格式，默认 utf8
    parameters:
      type: object
      properties:
        filePath:
          type: string
          description: 文件绝对路径
        encoding:
          type: string
          default: utf8
      required: [filePath]

  - name: write_file
    description: |
      将内容写入文件。如果文件存在，自动创建新文件避免覆盖。
      参数:
      - filePath (必需): 文件绝对路径
      - content (必需): 文件内容
    parameters:
      type: object
      properties:
        filePath:
          type: string
        content:
          type: string
      required: [filePath, content]

  - name: list_directory
    description: |
      列出目录内容。
      参数:
      - directoryPath (必需): 目录绝对路径
      - showHidden (可选): 是否显示隐藏文件
    parameters:
      type: object
      properties:
        directoryPath:
          type: string
        showHidden:
          type: boolean
          default: false
      required: [directoryPath]

  - name: search_files
    description: |
      递归搜索匹配模式的文件。
      参数:
      - searchPath (必需): 搜索起始目录
      - pattern (必需): 文件模式，如 *.txt
    parameters:
      type: object
      properties:
        searchPath:
          type: string
        pattern:
          type: string
      required: [searchPath, pattern]

tags: [file, system, essential]
enabled: true
