浏览器

文件浏览器(免费版)

试用

文件浏览器免费版,支持基础文件操作、目录浏览、简单搜索与文本预览。Use when 需要文件处理、文档转换、格式互转、内容提取时使用。不适用于加密文件破解。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。提供结构化输出和错误处理机制。

它能做什么

文件浏览器免费版,支持基础文件操作、目录浏览、简单搜索与文本预览。Use when 需要文件处理、文档转换、格式互转、内容提取时使用。不适用于加密文件破解。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。提供结构化输出和错误处理机制。

技能文档

浏览、查看、搜索、管理。四步完成文件系统操作。

无需复杂配置,通过简单的命令即可浏览目录、查看文件、搜索内容、管理文件。免费版聚焦轻量场景,提供基础的文件系统操作能力.

概述

免费版文件浏览器工具为个人用户提供基础的文件系统操作能力。覆盖目录浏览、文件查看、搜索、基础文件操作等核心场景,让文件管理触手可及.

核心定位

维度免费版能力
目录浏览支持(ls/tree)
文件查看支持(cat/head/tail)
基础搜索支持(find/grep)
文件操作支持(cp/mv/rm/mkdir)
文本预览支持(前N行/后N行)
文件信息支持(ls -la/stat)
批量操作不支持(需专业版)
高级搜索不支持(需专业版)
文件监控不支持(需专业版)
压缩解压不支持(需专业版)

核心能力

1. 目录浏览

详细代码示例已移至 references/detail.md

处理: 解析目录浏览的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回目录浏览的响应数据,包含状态码、结果和日志.

2. 文件查看

输入格式

参数名类型必填说明
inputstring文件浏览器(免费版)处理的输入数据或指令
optionsobject附加配置选项,如模式选择、格式偏好等
callback_urlstring异步处理完成后的回调通知URL
class FileViewer:
    """文件查看器(免费版)"""
# ...
    def view_text(self, filepath, encoding="utf-8"):
        """查看文本文件"""
        try:
            with open(filepath, 'r', encoding=encoding) as f:
                return f.read()
        except FileNotFoundError:
            return f"文件不存在:{filepath}"
        except UnicodeDecodeError:
            return f"无法解码({encoding}),可能是二进制文件"
        except PermissionError:
            return f"无权限读取:{filepath}"
# ...
    def head(self, filepath, n=10, encoding="utf-8"):
        """查看文件前N行"""
        try:
            with open(filepath, 'r', encoding=encoding) as f:
                lines = []
                for i, line in enumerate(f):
                    if i >= n:
                        break
                    lines.append(line.rstrip())
                return "\n".join(lines)
        except FileNotFoundError:
            return f"文件不存在:{filepath}"
# ...
    def tail(self, filepath, n=10, encoding="utf-8"):
        """查看文件后N行"""
        try:
            with open(filepath, 'r', encoding=encoding) as f:
                lines = f.readlines()
join([line.rstrip() for line in lines[-n:]])
        except FileNotFoundError:
            return f"文件不存在:{filepath}"
# ...
    def view_range(self, filepath, start_line=1, end_line=20, encoding="utf-8"):
        """查看指定行范围"""
        try:
            with open(filepath, 'r', encoding=encoding) as f:
                lines = []
                for i, line in enumerate(f, 1):
                    if start_line <= i <= end_line:
append(f"{i:4}: {line.rstrip()}")
                    if i > end_line:
                        break
        except FileNotFoundError:
            return f"文件不存在:{filepath}"
# ...
    def preview(self, filepath, max_chars=500):
        """预览文件(前N字符)"""
        content = self.view_text(filepath)
        if isinstance(content, str):
            if len(content) > max_chars:
                return content[:max_chars] + "\n\n... [截断,共 " + str(len(content)) + " 字符]"
            return content
        return content
# ...
viewer = FileViewer()
# ...
print("=== 文件前10行 ===")
print(viewer.head("README.md", 10))
# ...
print("\n=== 文件后5行 ===")
print(viewer.tail("README.md", 5))
# ...
print("\n=== 预览 ===")
print(viewer.preview("README.md", 200))

处理: 解析文件查看的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回文件查看的响应数据,包含状态码、结果和日志.

  • 执行此能力时使用input_params参数,支持创建/查询/导出操作

3. 基础搜索

处理: 解析基础搜索的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回基础搜索的响应数据,包含状态码、结果和日志.

4. 文件操作

处理: 解析文件操作的输入参数,完成核心逻辑,返回结构化响应. 输出: 返回文件操作的响应数据,包含状态码、结果和日志. 能力覆盖范围:本skill的核心能力覆盖以下场景关键词:文件浏览器免费版、支持基础文件操作、简单搜索与文本预、文件浏览器助手免、费版是面向个人用、户的轻量文件管理、四步流程、提供基础的文件系、统操作能力、Use、when、需要文件处理、文档转换、格式互转、内容提取时使用、不适用于加密文件、适用于独立开发者、企业团队和自动化、工作流场景等。这些关键词对应description中声明的使用场景,均已在上述能力点中提供对应的操作支持.

使用场景

场景一:日常文件管理

场景描述:浏览目录、查看文件、整理文件.

browser = DirectoryBrowser()
viewer = FileViewer()
ops = FileOperations()
# ...
print("当前目录内容:")
files = browser.list_directory(".", long_format=True)
for f in files[:10]:
    print(f"  {f['name']:20} {f['size_human']:>10} {f['modified']}")
# ...
print("\nREADME.md 前10行:")
print(viewer.head("README.md", 10))
# ...

场景二:快速查找文件

场景描述:根据名称或内容快速查找文件.

searcher = FileSearcher()
# ...
print("=== 查找所有 .md 文件 ===")
md_files = searcher.find_by_extension(".", "md")
for f in md_files[:10]:
    print(f"  {f}")
# ...
print("\n=== 搜索包含'error'的行 ===")
results = searcher.search_in_files(".", "error", "*.py")
for r in results[:5]:
    print(f"  {r['file']}:{r['line']}")

场景三:文本预览

场景描述:快速预览文本文件内容.

viewer = FileViewer()
# ...
files_to_preview = ["README.md", "config.yaml", "main.py"]
for f in files_to_preview:
    if os.path.exists(f):
        print(f"\n=== {f} 预览 ===")
        print(viewer.preview(f, 300))
    else:
        print(f"\n{f} 不存在")

快速开始

  1. 阅读## 核心能力章节了解skill功能
  2. 按## 依赖说明配置环境
  3. 执行所需能力对应的命令
  4. 参考## 错误处理章节处理异常
  5. 查看## FAQ解答常见疑问

30秒上手

ls -la
# ...
cat README.md | head -10
# ...
find . -name "*.py" -type f
# ...
grep -r "TODO" --include="*.py" .

120秒标准搭建

python3 --version
ls --version 2>/dev/null || dir  # Windows
cat > file_browser.py << 'PYEOF'
import os
import sys
from datetime import datetime
# ...
def list_dir(path="."):
    entries = os.listdir(path)
    for entry in sorted(entries):
        full = os.path.join(path, entry)
        if os.path.isdir(full):
            print(f"  [DIR]  {entry}/")
        else:
            size = os.path.getsize(full)
            print(f"  [FILE] {entry} ({size} bytes)")
# ...
def view_file(filepath, lines=10):
    with open(filepath, 'r', encoding='utf-8', errors='ignore') as f:
        for i, line in enumerate(f):
            if i >= lines: break
            print(f"  {i+1}: {line.rstrip()}")
# ...
def search_files(root, pattern):
    import fnmatch
    for dirpath, _, filenames in os.walk(root):
        for f in filenames:
            if fnmatch.fnmatch(f, pattern):
                print(f"  {os.path.join(dirpath, f)}")
# ...
if __name__ == "__main__":
    cmd = sys.argv[1] if len(sys.argv) > 1 else "list"
    if cmd == "list":
        list_dir(sys.argv[2] if len(sys.argv) > 2 else ".")
    elif cmd == "view":
        view_file(sys.argv[2])
    elif cmd == "search":
        search_files(".", sys.argv[2])
PYEOF
# ...
python3 file_browser.py list

响应解析: 完成完成后,查看输出响应确认任务状态。成功时输出包含解析摘要和响应数据;失败时根据错误信息排查问题,查阅错误解析章节获取恢复步骤.

配置示例

基础配置

import os
# ...
class FileBrowserConfig:
    """文件浏览器配置(免费版)"""
    DEFAULT_PATH = os.getenv("FB_DEFAULT_PATH", ".")
    MAX_SEARCH_RESULTS = int(os.getenv("FB_MAX_RESULTS", "100"))
    PREVIEW_MAX_CHARS = int(os.getenv("FB_PREVIEW_CHARS", "500"))
    DEFAULT_ENCODING = os.getenv("FB_ENCODING", "utf-8")
    SHOW_HIDDEN = os.getenv("FB_SHOW_HIDDEN", "0") == "1"
# ...
    @classmethod
    def show(cls):
        print("=== 文件浏览器配置 ===")
        print(f"默认路径:{cls.DEFAULT_PATH}")
        print(f"最大搜索结果:{cls.MAX_SEARCH_RESULTS}")
        print(f"预览字符数:{cls.PREVIEW_MAX_CHARS}")
        print(f"默认编码:{cls.DEFAULT_ENCODING}")
        print(f"显示隐藏文件:{cls.SHOW_HIDDEN}")
# ...
FileBrowserConfig.show()

常用命令速查

ls -la                        # 详细列表
ls -la --sort=time            # 按时间排序
tree -L 3                     # 树形结构(3层)
cat file.txt                  # 查看全部
head -n 10 file.txt           # 前10行
tail -n 10 file.txt           # 后10行
less file.txt                 # 分页查看
find . -name "*.py"           # 按文件名
find . -name "*.py" -type f   # 仅文件
grep -r "pattern" .           # 内容搜索
grep -rn "TODO" --include="*.py" .  # 限定文件类型
cp src dst                    # 复制
mv src dst                    # 移动/重命名
rm file                       # 删除
mkdir -p path/to/dir          # 创建多级目录
touch file.txt                # 创建空文件

最佳实践

1. 安全操作

def safe_delete(path):
    """安全删除(带确认)"""
    confirm = input(f"确认删除 {path}? (y/N): ")
    if confirm.lower() == 'y':
        return ops.delete(path)
    return {"success": False, "message": "已取消"}
# ...
def backup_before_operation(paths, backup_dir="./backup"):
    """操作前备份"""
    import shutil
    os.makedirs(backup_dir, exist_ok=True)
    for path in paths:
        if os.path.exists(path):
            shutil.copy2(path, backup_dir)

2. 搜索优化

def search_in_project(root, pattern, exclude_dirs=None):
    """在项目中搜索(排除指定目录)"""
    exclude_dirs = exclude_dirs or ['node_modules', '.git', 'venv', '__pycache__']
# ...
    for dirpath, dirnames, filenames in os.walk(root):
        dirnames[:] = [d for d in dirnames if d not in exclude_dirs]

错误处理

def robust_operation(func, *args, **kwargs):
    """带错误恢复的操作"""
    try:
        return func(*args, **kwargs)
    except PermissionError:
        return {"error": "无权限"}
    except FileNotFoundError:
        return {"error": "文件不存在"}
    except Exception as e:
        return {"error": str(e)}
序号错误场景原因处理方式优先级
1输入参数缺失用户未提供必要参数提示用户提供所需参数后执行ping命令测试网络连通性,检查防火墙和代理设置连接后重新执行命令P0
2执行超时处理时间过长检查输入数据量,分批处理P1
3输出格式错误结果不符合预期格式检查output_format参数配置P1

常见问题

Q1:免费版支持批量操作吗?

不支持。免费版每次只能操作一个文件/目录。如需批量操作(批量复制、批量重命名、批量删除等),需升级至专业版.

Q2:如何查看二进制文件?

免费版不支持二进制文件查看。文本预览会尝试以UTF-8解码,如失败会提示"可能是二进制文件"。如需查看二进制文件的十六进制、Base64等格式,需升级专业版.

Q3:搜索速度慢怎么办?

可能原因:(1) 搜索范围过大,建议限定目录;(2) 包含大量大文件,建议排除node_modules/.git等目录;(3) 内容搜索时文件过多,建议限定文件类型。免费版可通过 exclude_dirs 参数排除目录.

Q4:支持哪些文件系统操作?

免费版支持:目录浏览(ls/tree)、文件查看(cat/head/tail)、基础搜索(find/grep)、文件操作(cp/mv/rm/mkdir/touch)、文件信息(stat)。如需压缩解压、文件监控、权限管理等高级操作,需升级专业版.

Q5:可以跨文件系统操作吗?

可以。免费版支持跨文件系统复制和移动(如从本地到网络驱动器)。但跨文件系统操作可能较慢,且某些元信息(如权限)可能无法保留.

依赖说明

运行环境

  • Agent平台: 支持SKILL.md的任意AI Agent(Claude Code / Cursor / Codex / Gemini CLI等)
  • 操作系统: Windows / macOS / Linux
  • Python: 3.8+

依赖详情

依赖项类型是否必需获取方式
Python 3.8+运行时必需官网下载安装
osPython库必需Python标准库(文件操作)
shutilPython库必需Python标准库(高级文件操作)
fnmatchPython库必需Python标准库(文件名匹配)
LLM APIAPI必需由Agent平台内置LLM提供

API Key 配置

  • 免费版无需任何API Key
  • 文件操作基于本地文件系统,不涉及云端调用
  • LLM模型路由由Agent平台内置提供

可用性分类

  • 分类: MD+EXEC(Markdown指令+命令行执行)
  • 说明: 通过自然语言指令驱动Agent执行文件系统操作任务

已知限制

本免费体验版限制以下高级功能(需升级至专业版解锁):

  • 批量操作(批量复制/移动/删除/重命名)
  • 高级搜索(正则表达式/文件属性/时间范围)
  • 文件监控(实时监控文件变化)
  • 压缩解压(zip/tar/gzip/rar)
  • 二进制查看(十六进制/Base64)
  • 权限管理(chmod/chown详细控制)
  • 文件比较(diff/merge)
  • 云存储集成(S3/OSS/网盘)
  • 优先技术支持

解锁全部高级能力请使用专业版:file-browser-tool-pro

示例

基本用法

输出:返回执行结果,包含操作状态和输出数据

用户: 执行核心功能
Skill: 正在执行核心功能...
Skill: 执行完成,结果如下: 操作成功

输出格式

{
  "success": true,
  "data": {
    "result": "文件浏览器(免费版)处理结果",
    "execution_time": "0.5s",
    "metadata": {
      "version": "1.0",
      "processor": "file browser"
    }
  },
  "execution_log": ["解析输入参数", "执行核心处理", "格式化输出结果"],
  "error": null
}

相关技能

Read-only file browsing and reading in the SkillHub workspace (/home/alfred/。SkillHub/workspace),可处理提升工作效率。Use when 需要文件处理、文档转换、格式互转、内容提取时使用。不适用于加密文件破解。

1 次安装

通过自然语言驱动浏览器交互的CLI工具,支持本地Chrome,适合个人开发者快速自动化。Use when 需要提升效率、自动化流程、批量处理、工作流优化时使用。不适用于需要人工创意判断的任务。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。

利用视觉模型识别文件内容并智能重命名归档,模拟人类整理流程,适合个人桌面清理。Use when 需要文件处理、文档转换、格式互转、内容提取时使用。不适用于加密文件破解。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。提供结构化输出和错误处理机制。

基于Playwright的浏览器自动化CLI,支持签到、填表、截图与信息抓取,适合个人用户。Use when 需要提升效率、自动化流程、批量处理、工作流优化时使用。不适用于需要人工创意判断的任务。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。

2 次安装

无头浏览器自动化CLI,支持可访问性树快照与确定性元素选择,适合个人开发者。Use when 需要代码生成、编程辅助、调试测试、开发部署时使用。不适用于无明确技术栈的模糊需求。适用于独立开发者、企业团队和自动化工作流场景。支持中文交互,无需复杂配置即开即用。输出结果可直接使用,减少二次加工成本。提供结构化输出和错误处理机制。

网页浏览助手免费版,面向个人用户提供基础的网页浏览和信息提取能力。支持网站访问、内容总结、URL 内容提取、网络搜索等核心功能。Use when 需要SEO优化、关键词分析、排名提升、搜索流量优化时使用。不适用于黑帽SEO手段。Use when 需要SEO优化、关键词分析、排名提升、搜索流量优化时使用。不适用于黑帽SEO手段.

2 次安装