检查1Password命令行工具的安装和认证,将已保存的密码或API密钥传入命令及配置。支持桌面应用集成、服务账号和交互式登录,并先验证访问权限。
- 安装1Password命令行工具
- 将API密钥传入命令
- 在CI中使用服务账号认证
验证Slack认证、消息操作及OpenClaw的消息接收与回复。分别报告API检查和实际客户端操作的结果,并核对证据及测试后的清理情况。
Test Slack with Convex-leased user OAuth or QA bots; check credentials, exercise owned messages, prove Gateway behavior, and distinguish API evidence from real Slack client interactions.
slack-e2e在保留记录的同时,验证Slack认证、消息操作及OpenClaw的消息接收与回复。支持检查用户认证,以及测试消息的创建、读取、编辑和删除。在现有QA Lab中,还可验证经由负责连接的Gateway发送的回复、文件操作和重启,并核对保存的结果及清理情况。
适合检查Slack集成是否正常,或定位缺失的权限。需要分别报告已保存消息的检查结果与实际客户端操作,而非仅凭API成功响应判断时,也可以使用。
OpenClaw的消息接收与回复,并汇总证据和清理结果。”需要已安装依赖的源码环境、现有Convex登录、可用凭据及Slack权限。测试发布的消息可能被现有监听器看到。验证点击、斜杠命令和显示效果,需要已获授权且已登录的Slack客户端。仅有API记录不能证明客户端操作。凭据和原始记录须保密。
本介绍由 AI(OpenAI Codex)根据公开的 SKILL.md 撰写。准确的规格请查看下方原文。
AI 仅根据 SKILL.md 的内容,从 4 个方面进行了评估。星标数和热度不计入评估。
总分按每项 A=25 分、B=15 分、C=5 分相加。 由 AI(OpenAI Codex)于 2026年10月19日 评估。仅供参考,安装前请同时查看原文。
安装前可以查看交给 AI 代理的指令内容。
| Goal | Entry point | Boundary |
|---|---|---|
| Check shared user OAuth | Read-only command below | User/workspace identity and channel history; no Gateway |
| Exercise user-authored text | Same command with --smoke | Create, read, edit, delete, verify absence; no Gateway reply claim |
| Prove OpenClaw ingress, replies, tools, files, or restart | Existing QA Lab lane below | Leased driver/SUT bots and an isolated Gateway |
| Prove real clicks, slash commands, or rendering | Authorized Slack client | Actual client observation, not reconstructed API data |
Start from a source checkout with normal dependencies and an existing Convex
login. If needed, ask the operator to run convex login or the cached
bunx --no-install convex login. The broker provides the authorized pool;
agents do not need to copy Slack tokens. Login alone cannot supply a missing
pool credential or grant Slack permissions.
node .agents/skills/slack-e2e/scripts/user-oauth-smoke.mjs
node .agents/skills/slack-e2e/scripts/user-oauth-smoke.mjs --smoke
The default is read-only in Slack; both modes acquire, heartbeat, and release
a Convex lease. --smoke creates one synthetic, unmentioned top-level message,
checks stored authorship, edits it, and deletes that exact message. Existing
workspace listeners can still observe it. Each command uses a new private
artifact directory and prints a safe result plus its path.
Read user OAuth setup and recovery for the pool payload,
permissions, result interpretation, and failure handling. This skill-owned
command reuses the existing lease helper; it changes no QA Lab code or release
lane and starts no Gateway or model. It does not add a user-driver option to
qa slack.
Use the source-checkout QA Lab owner for Gateway proof, not a separate bot runner. A run owns a leased driver/SUT pair, a temporary Gateway, native fixture receipts, and private artifacts. The driver has no Socket Mode connection: the SUT Gateway exclusively owns the app token and event delivery.
Use the existing Convex login above. No Slack tokens, broker secrets, model credentials, app creation, or scope grants belong in the command line.
Inspect the available scenarios and run readiness:
pnpm openclaw qa slack --list-scenarios
pnpm openclaw qa slack --doctor --output-dir .artifacts/qa-e2e/slack-doctor
Doctor checks the actual lease: distinct bot identities in one workspace, both bots' channel access, the owned Gateway connection, and advertised OAuth scopes. Known missing scopes fail with their actor and exact names. Missing scope metadata means mutation capability is unverified, not granted. Missing optional file/reaction scopes do not block text-only flows; they block the affected native operations before dispatch. Doctor's full lifecycle capability verdict remains separate from mandatory connection readiness. A pool/login/permission failure is an owner prerequisite, not a reason to rotate credentials until one passes. Every subsequent run checks its own lease.
Run the native lifecycle recipe:
pnpm openclaw qa slack \
--scenario-file qa/scenarios/channels/slack-e2e-lifecycle.yaml \
--output-dir .artifacts/qa-e2e/slack-lifecycle
--doctor and --scenario-file default to Convex, the CI role, and
mock-openai. This is real Slack/Gateway transport with a deterministic model.
Explicit overrides remain available; ordinary curated qa slack defaults do
not change. Use a unique output directory per run. Additional
--scenario-file arguments select additional complete YAML scenarios.
Read the summary, evidence, and cleanup result before claiming success. Choose feature recipes for native operations or model-tool evidence, and runtime recipes for config/restart, custom flows, cancellation, artifacts, and recovery.
| Surface | What automation proves |
|---|---|
| Mention/quiet ingress, owned edits/deletes, reactions, upload, thread replies | Fixture/API operations and explicit stored readback; not model tool calls |
| Correlated SUT reply | A stored reply from the leased SUT after ingress; mock or live model must be named |
| Gateway debug-proxy capture | Slack accepted a Gateway API write; neither Socket Mode event delivery nor rendering |
| Block Kit, file IDs, reaction state | Stored structure/identity only |
| Human slash invocation, real button clicks, Agent View, visible rendering, human typing | Manual/Mantis client lane; bot/API evidence is insufficient |
For visual or human-interaction requests, use an authorized, logged-in Slack
client; the maintained Mantis workflow is in
docs/concepts/qa-e2e-automation/operator-flow.md. Check which surface it actually
captured: --approval-checkpoints renders API message data, not the Slack client.
A Slack sign-in screenshot is not proof of a workspace action.
Preserve inspected client screenshots alongside native evidence. Posting slash
text through the API is not a slash invocation; Gateway approval RPCs are not
button clicks. Do not infer typing from assistant status or start another Socket
Mode recorder with the SUT app token.
Report scenario/model lane, stored native identities or safe counts, artifact paths, cleanup outcome, missing permissions, and any manual-only gap. Keep raw Gateway capture, channel IDs, messages, media, and lease material private; publish only sanitized proof. A successful API response with failed stored readback, an uncertain send, or failed cleanup is not an end-to-end pass.
还没有评价。欢迎分享你的使用感受。
无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。
还没有评论。来写第一条吧。
检查1Password命令行工具的安装和认证,将已保存的密码或API密钥传入命令及配置。支持桌面应用集成、服务账号和交互式登录,并先验证访问权限。
将提交给OpenClaw的自然语言请求转交给Claude Code等外部编程智能体,通过ACP或acpx启动、继续会话,并保留对话上下文。
为OpenClaw添加模型服务商,并通过实际回复验证连接。凭据以环境变量或文件引用的形式配置,同时验证设置并报告测试结果。
将AI代理的工作日志整理为可附在GitHub拉取请求或议题中的记录,筛选相关内容、移除敏感信息,并支持预览及经单独授权后的发布。
通过代理管理macOS上的Apple Notes笔记,支持创建、查看、搜索、编辑和删除,在文件夹之间移动笔记,并将选定笔记导出为HTML或Markdown。
通过Mac查看、添加和编辑Apple Reminders中带截止时间的待办事项,管理列表并完成或删除任务,整理在iPhone或iPad上查看的个人任务。