agentsclimarketplace

Openlist

Skill uvwt/agentdock/skill-sources/openlist

Secure MCP runtime for AI agents to operate local machines, servers, and containers with multi-device orchestration.

Install
npx -y skills add uvwt/agentdock --skill openlist

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

What its author says it does

Copied from the file, not written here

OpenList v4 HTTP API integration for AgentDock: authentication, file browsing/search, safe text uploads, file operations, storage/driver inspection, and restricted generic API calls.

SKILL.md

4.0 KB, as published. Nobody here has run it

OpenList Skill

OpenList v4 的 HTTP API 封装为 AgentDock 原生 Skill。

能力

  • 服务状态与公开配置检查
  • 登录、登出、本地会话保存与清理
  • 当前用户查询
  • 文件/目录列表、详情、目录树与搜索
  • 新建目录、上传 UTF-8 文本文件、重命名、移动、复制、删除
  • 管理员存储列表、驱动列表
  • 受限通用 /api/* JSON 请求

默认连接

默认连接 http://127.0.0.1:5244。可在调用中传 base_url,或设置 OPENLIST_URL

登录成功后默认把 token 保存到 $XDG_STATE_HOME/openlist-skill/session.json;未设置 XDG_STATE_HOME 时使用 ~/.local/state/openlist-skill/session.json。目录权限为 0700、文件权限为 0600。也可通过 OPENLIST_SESSION_FILE 指定会话文件,在单次调用中传 token,或设置 OPENLIST_TOKEN

AgentDock 安装会通过 OPENLIST_SESSION_FILE 将私有会话保存在 ~/.agentdock/skill-data/openlist/session.json,因此升级不会迁移或丢失当前登录态。

环境变量

变量类型必填说明
OPENLIST_URLconfigOpenList 服务地址,默认 http://127.0.0.1:5244
OPENLIST_TOKENsecret直接提供访问令牌;未配置时尝试读取本地会话
OPENLIST_SESSION_FILEconfig自定义会话文件路径
XDG_STATE_HOMEconfig未配置会话文件时的可移植状态目录

上传

upload 操作通过 OpenList 官方 /api/fs/put 接口上传 UTF-8 文本,默认限制 1 MiB,最高允许 10 MiB,并校验 SHA-256。

安全约束

  • base_url 仅允许 http/https,禁止 URL 内嵌用户名和密码。
  • 通用请求仅允许 /api/* 路径和 GET/POST/PUT/PATCH/DELETE 方法。
  • 登录结果默认不回显 token;只有显式传 return_token: true 才返回。
  • 不包含 OpenList 上游源码或二进制,仅提供 API 适配层;OpenList 本身继续遵循其 AGPL-3.0 许可证。

辅助脚本执行

Skill 本体是本说明文档。确需调用包内辅助脚本时,在 Skill 包根目录使用相对路径执行;运行宿主负责切换到包根目录并把所需变量注入当前子进程。

printf '%s' '{"skill_action":"<动作>"}' | python3 run.py

输入必须是 JSON 对象。写操作仍按本文档中的确认规则执行。

动作用途
statusCheck OpenList public settings endpoint and report connectivity.
loginLogin to OpenList; saves token locally by default and does not echo it unless return_token=true.
logoutLogout from OpenList and clear the locally saved session by default.
meReturn the current authenticated OpenList user.
listList a directory through /api/fs/list; guest access is supported when OpenList allows it.
getGet file or directory details and raw URL through /api/fs/get.
dirsList child directories through /api/fs/dirs.
searchSearch the OpenList index.
mkdirCreate a directory.
renameRename a file or directory.
moveMove one or more names between directories.
copyCopy one or more names between directories.
removeRemove one or more names from a directory.
uploadUpload a small UTF-8 text file through /api/fs/put. Designed for safe automation and verification.
storage-listList configured storages (admin token required).
driver-listList OpenList storage driver definitions (admin token required).
api-requestCall an OpenList JSON API endpoint not covered by a dedicated action.
session-statusShow whether a local OpenList session token is saved without revealing it.
session-clearDelete the locally saved OpenList session token.

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.