跳到正文
cccskills
免费在 GitHub 公开

effect-v4

Write, review, and upgrade Effect v4 code for Composio CLI and its related packages. It guides service definitions, typed errors, command APIs, and version alignment, checking unfamiliar APIs against source files and installed type definitions.

中文简介正在准备中。当前显示英语简介。

原文查看原文说明

Write, review, or upgrade Effect v4 code in the Composio CLI, cli-keyring, and json-schema-to-effect-schema packages, all pinned exactly to effect@4.0.3 — Context.Service and explicit layers, Schema.TaggedError and typed recovery, the effect/cli command surface, and the vendored effect source oracle. Use when writing or reviewing Effect v4 code, answering a v4 API question, working in effect/cli, defining a Context.Service service, modeling an error with Schema.TaggedError, bumping the Effect pins, or verifying an unfamiliar API against ts/vendor/effect. Do not use for CLI command UX/wiring design (use cli-command) or CLI E2E tests (use cli-e2e).

查看安装方法

适用场景

  • Implementing and reviewing Effect v4 code
  • Defining services and typed error recovery
  • Checking effect/cli APIs
  • Updating aligned Effect dependency versions

包含的文件(6)

  • SKILL.md4.2 KB
  • references/cli-surface.md7.2 KB
  • references/core-patterns.md19.5 KB
  • references/upgrade-workflow.md3.5 KB
  • scripts/check-examples.mjs7.2 KB
  • versions.json161 B

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Effect v4

The CLI, @composio/cli-keyring, and @composio/json-schema-to-effect-schema run on Effect v4. Every claim below is grounded in the migrated source, not memory of v3.

Exact version matrix

effect, @effect/platform-bun, and @effect/vitest are pinned to the same exact 4.0.3 — never ^, @next, or a mismatched version across packages. @effect/cli and @effect/platform no longer exist as dependencies; their surfaces are consolidated into effect and effect/*. See versions.json for the full matrix (also typescript, vitest).

Read next

  • references/core-patterns.md — services, layers, typed errors, Schema, choosing between Effect.gen and Effect.fn, Option combinators in place of isSome ternaries, driving time in tests with TestClock (fork, adjust until the fiber settles, join) instead of it.live, and the v3→v4 rename table (labeled historical, for recognizing stale patterns).
  • references/cli-surface.md — effect/cli: Command, Flag, Argument, GlobalFlag, CliConfig, the custom CliOutput.Formatter, and the runner's double-print rule.
  • references/upgrade-workflow.md — procedure for bumping to a newer release.

Code excerpts in those references are short quotes from real, currently-compiling repo files (path cited at each excerpt) — not standalone examples. The compile-checked source of truth is always the cited file itself; when it and a reference disagree, trust the file and fix the reference.

Non-negotiables

  • Effect.gen(function* () {...}) for effect values — the dominant form, including named module consts — and (params) => Effect.gen(...) for parameterized helpers. Effect.fn(...) is the function form whose effects carry stack-frame annotations (its optional name string adds a per-call tracing span), worth it for service members and combinator callbacks that should be attributable in error reports. All forms re-run their body per execution. See "Effect.gen vs Effect.fn" in core-patterns.
  • Define services with Context.Service and an explicit static readonly Default/layer layer built with Layer.succeed/Layer.effect/Layer.provide. V4 does not generate a layer for you.
  • Model expected failures with Schema.TaggedError (or a plain Data.TaggedError when no Schema fields are needed) and recover with Effect.catchTag/catchTags/Match, never manual _tag string comparisons.
  • Wrap fallible Promises with Effect.tryPromise({ try, catch }); Effect.promise turns rejection into a defect. No async/await or try/catch inside Effect workflows — ESLint bans them in ts/packages/cli/src.
  • Treat every remembered v3 package name and API as wrong until verified against ts/vendor/effect (read-only source oracle — never edit or import from it) and the installed effect@4.0.3 typings. Source may be ahead of the published package; the compiler is the compatibility gate.

Verification

pnpm typecheck
pnpm --filter @composio/cli test

Run pnpm validate:agent-skills and pnpm validate:skill-routing after editing this skill or its descriptions, and compile the TypeScript blocks in this skill and in typescript-testing/references/effect-v4-cli.md against the pinned packages with:

node .agents/skills/effect-v4/scripts/check-examples.mjs

Blocks that quote repo files with unresolvable imports carry a no-check fence info string.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Fix defects in Composio SDK through focused reproduction, root-cause analysis, regression tests that check for recurrence, and targeted verification. Use it for reported bugs, failing tests, CI regressions, runtime errors, or incorrect SDK behavior.

中文简介正在准备中。当前显示英语简介。

  • Reproducing and fixing reported SDK bugs
  • Investigating failing tests
  • Fixing regressions in automated CI checks
ComposioHQ/composio3.1万2026年10月19日 更新

Design, implement, and review Composio CLI commands, including user interactions, output, errors, and configuration. It guides command wiring and service changes using Effect and effect/cli, with references for implementation patterns.

中文简介正在准备中。当前显示英语简介。

  • Designing CLI command behavior and output
  • Implementing command wiring with Effect
  • Reviewing configuration and error handling
ComposioHQ/composio3.1万2026年10月19日 更新

cli-e2e

免费

Create, update, and debug Docker-based end-to-end tests for the Composio CLI. Covers running the executable, keeping test data separate, checking command output, and maintaining package manifests within the CLI test suite.

中文简介正在准备中。当前显示英语简介。

  • Add end-to-end tests for CLI commands
  • Debug unexpected CLI test output
  • Keep test data isolated between tests
ComposioHQ/composio3.1万2026年10月19日 更新

Build beta versions of the Composio CLI, promote a tested beta to a stable release, and investigate failed releases. Guides verification of published binaries and installation tests through the Build CLI Binaries workflow.

中文简介正在准备中。当前显示英语简介。

  • Build a CLI beta release
  • Promote a tested beta to stable
  • Verify release assets and installation
ComposioHQ/composio3.1万2026年10月19日 更新

composio

免费

Set up and use Composio to connect AI agents with apps such as Gmail, Slack, and Notion. Selects guidance for personal accounts or product integrations, covering setup, app operations, troubleshooting, and migration.

中文简介正在准备中。当前显示英语简介。

  • Connect a personal AI agent to apps
  • Integrate account connections into a product
  • Diagnose failed connections or tool calls
ComposioHQ/composio3.1万2026年10月19日 更新

Keep TypeScript and Python SDKs consistent when shared behavior or backend APIs change. Aligns public API names, use of generated clients, and documentation examples, including updates to the fixed versions of generated clients.

中文简介正在准备中。当前显示英语简介。

  • Align a change across both SDKs
  • Compare TypeScript and Python behavior
  • Update fixed versions of generated clients
ComposioHQ/composio3.1万2026年10月19日 更新

查看 ComposioHQ 的全部技能

报告此技能的问题