| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
feat(www): add blog | 2 个月前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
docs(asana): pin task examples on overview (#1270) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
fix(tunnel): reap orphaned frpc so a dev tunnel can't wedge itself (#1732) | 1 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
fix(tunnel): reap orphaned frpc so a dev tunnel can't wedge itself (#1732) | 1 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
feat(plugins): add emelia integration plugin (#1232) Co-authored-by: Nickss <nickss@Nicksss-MacBook-Air.local> | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
docs(figma): customize file examples (#1314) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
feat(frpc): ship frpc as per-platform npm packages (#803) * feat(frpc): ship frpc as per-platform npm packages Add @corsair-dev/frpc-<platform>-<arch> optional-dependency packages (the esbuild/Turbopack pattern) so corsair resolves frpc from the npm registry instead of a postinstall download — no build script for pnpm to block. resolveFrpcBinary prefers the installed platform package and falls back to the existing postinstall cache (kept for now). Binaries are materialized at publish by scripts/prepare-frpc-packages.mjs (SHA256-verified, frp Apache-2.0 LICENSE + NOTICE bundled), git-ignored, and version-locked to corsair via workspace:*. * fix(frpc): materialize binaries at publish + guard version reuse Address review: (1) each platform package now has a prepack hook that runs prepare-frpc-packages.mjs for its own target, so publishing from a fresh checkout always includes the binary in the tarball; (2) prepare skips only when a .frpc-version marker matches the current FRPC_VERSION, so a binary left from a previous version is re-downloaded + re-verified rather than republished stale. prepare accepts an optional single-target arg for the per-package hook. * chore(frpc): bump platform packages to 0.1.115 (lockstep with corsair) * fix(frpc): add build script so publish tooling materializes the binary publish-changed.mjs runs `pnpm --filter <pkg> build` before publishing each package. The frpc packages had no build script; add one that runs the prepare step (prepack delegates to it), so both release paths — publish-changed.mjs and the turbo `pnpm release` — materialize each binary, not just the prepack hook. * fix(frpc): drop build task + fix EXDEV in prepare script The build task I added made turbo run prepare-frpc-packages.mjs for all six packages during the www app deploy (they are in www's dep graph via corsair's optionalDeps), which both wasted work and failed. Revert to prepack-only: publish-changed.mjs's `pnpm --filter build` is a lenient no-op and `pnpm publish` still fires prepack; turbo no longer runs anything for these packages. Also fix a real latent bug the deploy surfaced: prepare renamed the binary from /tmp into the package dir, which is EXDEV (cross-device) on Linux CI. Use copyFileSync so it works regardless of filesystem. * feat(cli): show the CORSAIR banner + live URL on `corsair http` The banner was orphaned in the old `corsair setup` flow; wire it into the `http` command's success output (it printed plain lines before). Swap the pirate glyph for a celebratory banner + the live tunnel URL. * chore(pr-gate): exclude frpc-* binary packages from the plugin gate The frpc-<platform>-<arch> packages are prebuilt binary shims for the dev tunnel, not integrations, so the plugin rules (per-package tests, demo video, one-plugin-per-PR scope) don't apply. Skip them in pluginOf so the gate no longer flags this PR. * chore(scripts): exclude frpc-* binary packages from plugin validators validate:plugins and validate:docs both scan packages/* and treat every non-ignored dir as an integration, so the frpc-<platform>-<arch> binary shims tripped the structural checks (index.ts, endpoints, jest). Skip them the same way the PR gate does. * fix(frpc): make frpc-binary parse under ts-jest and resolve in the ESM build createRequire(import.meta.url) is ESM-only; ts-jest transpiles this file to CJS, where import.meta and a `const require` both fail to parse — breaking every suite that transitively imports it. Seed createRequire from __filename (tsup `shims` defines it in the ESM build), rename the local to nodeRequire, and map corsair/hub to source in jest so slack/linear don't resolve it to the built dist that now carries the import.meta shim. * refactor(frpc): single source of truth for version + checksums The pinned frp version and the SHA256 table the download paths verify against were duplicated across postinstall-frpc.mjs and prepare-frpc-packages.mjs, kept in sync only by a comment — a drift risk on a security-relevant constant. Extract both to scripts/frpc-release.json, read by each script, and ship it via the package `files` so the end-user postinstall resolves it too. frpc-binary.ts keeps its version literal (a runtime cache-path segment, non-security) with a pointer to the JSON. * chore(frpc): bump corsair + frpc packages to 0.1.117 npm latest is 0.1.116 (without optionalDependencies) and 0.1.115 is already published, so the frpc optional deps only reach `npm i corsair` once latest advances past 0.1.116. workspace:* pins each frpc package to the exact 0.1.117 at publish time (verified via pnpm pack). | 29 天前 | |
feat(frpc): ship frpc as per-platform npm packages (#803) * feat(frpc): ship frpc as per-platform npm packages Add @corsair-dev/frpc-<platform>-<arch> optional-dependency packages (the esbuild/Turbopack pattern) so corsair resolves frpc from the npm registry instead of a postinstall download — no build script for pnpm to block. resolveFrpcBinary prefers the installed platform package and falls back to the existing postinstall cache (kept for now). Binaries are materialized at publish by scripts/prepare-frpc-packages.mjs (SHA256-verified, frp Apache-2.0 LICENSE + NOTICE bundled), git-ignored, and version-locked to corsair via workspace:*. * fix(frpc): materialize binaries at publish + guard version reuse Address review: (1) each platform package now has a prepack hook that runs prepare-frpc-packages.mjs for its own target, so publishing from a fresh checkout always includes the binary in the tarball; (2) prepare skips only when a .frpc-version marker matches the current FRPC_VERSION, so a binary left from a previous version is re-downloaded + re-verified rather than republished stale. prepare accepts an optional single-target arg for the per-package hook. * chore(frpc): bump platform packages to 0.1.115 (lockstep with corsair) * fix(frpc): add build script so publish tooling materializes the binary publish-changed.mjs runs `pnpm --filter <pkg> build` before publishing each package. The frpc packages had no build script; add one that runs the prepare step (prepack delegates to it), so both release paths — publish-changed.mjs and the turbo `pnpm release` — materialize each binary, not just the prepack hook. * fix(frpc): drop build task + fix EXDEV in prepare script The build task I added made turbo run prepare-frpc-packages.mjs for all six packages during the www app deploy (they are in www's dep graph via corsair's optionalDeps), which both wasted work and failed. Revert to prepack-only: publish-changed.mjs's `pnpm --filter build` is a lenient no-op and `pnpm publish` still fires prepack; turbo no longer runs anything for these packages. Also fix a real latent bug the deploy surfaced: prepare renamed the binary from /tmp into the package dir, which is EXDEV (cross-device) on Linux CI. Use copyFileSync so it works regardless of filesystem. * feat(cli): show the CORSAIR banner + live URL on `corsair http` The banner was orphaned in the old `corsair setup` flow; wire it into the `http` command's success output (it printed plain lines before). Swap the pirate glyph for a celebratory banner + the live tunnel URL. * chore(pr-gate): exclude frpc-* binary packages from the plugin gate The frpc-<platform>-<arch> packages are prebuilt binary shims for the dev tunnel, not integrations, so the plugin rules (per-package tests, demo video, one-plugin-per-PR scope) don't apply. Skip them in pluginOf so the gate no longer flags this PR. * chore(scripts): exclude frpc-* binary packages from plugin validators validate:plugins and validate:docs both scan packages/* and treat every non-ignored dir as an integration, so the frpc-<platform>-<arch> binary shims tripped the structural checks (index.ts, endpoints, jest). Skip them the same way the PR gate does. * fix(frpc): make frpc-binary parse under ts-jest and resolve in the ESM build createRequire(import.meta.url) is ESM-only; ts-jest transpiles this file to CJS, where import.meta and a `const require` both fail to parse — breaking every suite that transitively imports it. Seed createRequire from __filename (tsup `shims` defines it in the ESM build), rename the local to nodeRequire, and map corsair/hub to source in jest so slack/linear don't resolve it to the built dist that now carries the import.meta shim. * refactor(frpc): single source of truth for version + checksums The pinned frp version and the SHA256 table the download paths verify against were duplicated across postinstall-frpc.mjs and prepare-frpc-packages.mjs, kept in sync only by a comment — a drift risk on a security-relevant constant. Extract both to scripts/frpc-release.json, read by each script, and ship it via the package `files` so the end-user postinstall resolves it too. frpc-binary.ts keeps its version literal (a runtime cache-path segment, non-security) with a pointer to the JSON. * chore(frpc): bump corsair + frpc packages to 0.1.117 npm latest is 0.1.116 (without optionalDependencies) and 0.1.115 is already published, so the frpc optional deps only reach `npm i corsair` once latest advances past 0.1.116. workspace:* pins each frpc package to the exact 0.1.117 at publish time (verified via pnpm pack). | 29 天前 | |
feat(frpc): ship frpc as per-platform npm packages (#803) * feat(frpc): ship frpc as per-platform npm packages Add @corsair-dev/frpc-<platform>-<arch> optional-dependency packages (the esbuild/Turbopack pattern) so corsair resolves frpc from the npm registry instead of a postinstall download — no build script for pnpm to block. resolveFrpcBinary prefers the installed platform package and falls back to the existing postinstall cache (kept for now). Binaries are materialized at publish by scripts/prepare-frpc-packages.mjs (SHA256-verified, frp Apache-2.0 LICENSE + NOTICE bundled), git-ignored, and version-locked to corsair via workspace:*. * fix(frpc): materialize binaries at publish + guard version reuse Address review: (1) each platform package now has a prepack hook that runs prepare-frpc-packages.mjs for its own target, so publishing from a fresh checkout always includes the binary in the tarball; (2) prepare skips only when a .frpc-version marker matches the current FRPC_VERSION, so a binary left from a previous version is re-downloaded + re-verified rather than republished stale. prepare accepts an optional single-target arg for the per-package hook. * chore(frpc): bump platform packages to 0.1.115 (lockstep with corsair) * fix(frpc): add build script so publish tooling materializes the binary publish-changed.mjs runs `pnpm --filter <pkg> build` before publishing each package. The frpc packages had no build script; add one that runs the prepare step (prepack delegates to it), so both release paths — publish-changed.mjs and the turbo `pnpm release` — materialize each binary, not just the prepack hook. * fix(frpc): drop build task + fix EXDEV in prepare script The build task I added made turbo run prepare-frpc-packages.mjs for all six packages during the www app deploy (they are in www's dep graph via corsair's optionalDeps), which both wasted work and failed. Revert to prepack-only: publish-changed.mjs's `pnpm --filter build` is a lenient no-op and `pnpm publish` still fires prepack; turbo no longer runs anything for these packages. Also fix a real latent bug the deploy surfaced: prepare renamed the binary from /tmp into the package dir, which is EXDEV (cross-device) on Linux CI. Use copyFileSync so it works regardless of filesystem. * feat(cli): show the CORSAIR banner + live URL on `corsair http` The banner was orphaned in the old `corsair setup` flow; wire it into the `http` command's success output (it printed plain lines before). Swap the pirate glyph for a celebratory banner + the live tunnel URL. * chore(pr-gate): exclude frpc-* binary packages from the plugin gate The frpc-<platform>-<arch> packages are prebuilt binary shims for the dev tunnel, not integrations, so the plugin rules (per-package tests, demo video, one-plugin-per-PR scope) don't apply. Skip them in pluginOf so the gate no longer flags this PR. * chore(scripts): exclude frpc-* binary packages from plugin validators validate:plugins and validate:docs both scan packages/* and treat every non-ignored dir as an integration, so the frpc-<platform>-<arch> binary shims tripped the structural checks (index.ts, endpoints, jest). Skip them the same way the PR gate does. * fix(frpc): make frpc-binary parse under ts-jest and resolve in the ESM build createRequire(import.meta.url) is ESM-only; ts-jest transpiles this file to CJS, where import.meta and a `const require` both fail to parse — breaking every suite that transitively imports it. Seed createRequire from __filename (tsup `shims` defines it in the ESM build), rename the local to nodeRequire, and map corsair/hub to source in jest so slack/linear don't resolve it to the built dist that now carries the import.meta shim. * refactor(frpc): single source of truth for version + checksums The pinned frp version and the SHA256 table the download paths verify against were duplicated across postinstall-frpc.mjs and prepare-frpc-packages.mjs, kept in sync only by a comment — a drift risk on a security-relevant constant. Extract both to scripts/frpc-release.json, read by each script, and ship it via the package `files` so the end-user postinstall resolves it too. frpc-binary.ts keeps its version literal (a runtime cache-path segment, non-security) with a pointer to the JSON. * chore(frpc): bump corsair + frpc packages to 0.1.117 npm latest is 0.1.116 (without optionalDependencies) and 0.1.115 is already published, so the frpc optional deps only reach `npm i corsair` once latest advances past 0.1.116. workspace:* pins each frpc package to the exact 0.1.117 at publish time (verified via pnpm pack). | 29 天前 | |
feat(frpc): ship frpc as per-platform npm packages (#803) * feat(frpc): ship frpc as per-platform npm packages Add @corsair-dev/frpc-<platform>-<arch> optional-dependency packages (the esbuild/Turbopack pattern) so corsair resolves frpc from the npm registry instead of a postinstall download — no build script for pnpm to block. resolveFrpcBinary prefers the installed platform package and falls back to the existing postinstall cache (kept for now). Binaries are materialized at publish by scripts/prepare-frpc-packages.mjs (SHA256-verified, frp Apache-2.0 LICENSE + NOTICE bundled), git-ignored, and version-locked to corsair via workspace:*. * fix(frpc): materialize binaries at publish + guard version reuse Address review: (1) each platform package now has a prepack hook that runs prepare-frpc-packages.mjs for its own target, so publishing from a fresh checkout always includes the binary in the tarball; (2) prepare skips only when a .frpc-version marker matches the current FRPC_VERSION, so a binary left from a previous version is re-downloaded + re-verified rather than republished stale. prepare accepts an optional single-target arg for the per-package hook. * chore(frpc): bump platform packages to 0.1.115 (lockstep with corsair) * fix(frpc): add build script so publish tooling materializes the binary publish-changed.mjs runs `pnpm --filter <pkg> build` before publishing each package. The frpc packages had no build script; add one that runs the prepare step (prepack delegates to it), so both release paths — publish-changed.mjs and the turbo `pnpm release` — materialize each binary, not just the prepack hook. * fix(frpc): drop build task + fix EXDEV in prepare script The build task I added made turbo run prepare-frpc-packages.mjs for all six packages during the www app deploy (they are in www's dep graph via corsair's optionalDeps), which both wasted work and failed. Revert to prepack-only: publish-changed.mjs's `pnpm --filter build` is a lenient no-op and `pnpm publish` still fires prepack; turbo no longer runs anything for these packages. Also fix a real latent bug the deploy surfaced: prepare renamed the binary from /tmp into the package dir, which is EXDEV (cross-device) on Linux CI. Use copyFileSync so it works regardless of filesystem. * feat(cli): show the CORSAIR banner + live URL on `corsair http` The banner was orphaned in the old `corsair setup` flow; wire it into the `http` command's success output (it printed plain lines before). Swap the pirate glyph for a celebratory banner + the live tunnel URL. * chore(pr-gate): exclude frpc-* binary packages from the plugin gate The frpc-<platform>-<arch> packages are prebuilt binary shims for the dev tunnel, not integrations, so the plugin rules (per-package tests, demo video, one-plugin-per-PR scope) don't apply. Skip them in pluginOf so the gate no longer flags this PR. * chore(scripts): exclude frpc-* binary packages from plugin validators validate:plugins and validate:docs both scan packages/* and treat every non-ignored dir as an integration, so the frpc-<platform>-<arch> binary shims tripped the structural checks (index.ts, endpoints, jest). Skip them the same way the PR gate does. * fix(frpc): make frpc-binary parse under ts-jest and resolve in the ESM build createRequire(import.meta.url) is ESM-only; ts-jest transpiles this file to CJS, where import.meta and a `const require` both fail to parse — breaking every suite that transitively imports it. Seed createRequire from __filename (tsup `shims` defines it in the ESM build), rename the local to nodeRequire, and map corsair/hub to source in jest so slack/linear don't resolve it to the built dist that now carries the import.meta shim. * refactor(frpc): single source of truth for version + checksums The pinned frp version and the SHA256 table the download paths verify against were duplicated across postinstall-frpc.mjs and prepare-frpc-packages.mjs, kept in sync only by a comment — a drift risk on a security-relevant constant. Extract both to scripts/frpc-release.json, read by each script, and ship it via the package `files` so the end-user postinstall resolves it too. frpc-binary.ts keeps its version literal (a runtime cache-path segment, non-security) with a pointer to the JSON. * chore(frpc): bump corsair + frpc packages to 0.1.117 npm latest is 0.1.116 (without optionalDependencies) and 0.1.115 is already published, so the frpc optional deps only reach `npm i corsair` once latest advances past 0.1.116. workspace:* pins each frpc package to the exact 0.1.117 at publish time (verified via pnpm pack). | 29 天前 | |
feat(frpc): ship frpc as per-platform npm packages (#803) * feat(frpc): ship frpc as per-platform npm packages Add @corsair-dev/frpc-<platform>-<arch> optional-dependency packages (the esbuild/Turbopack pattern) so corsair resolves frpc from the npm registry instead of a postinstall download — no build script for pnpm to block. resolveFrpcBinary prefers the installed platform package and falls back to the existing postinstall cache (kept for now). Binaries are materialized at publish by scripts/prepare-frpc-packages.mjs (SHA256-verified, frp Apache-2.0 LICENSE + NOTICE bundled), git-ignored, and version-locked to corsair via workspace:*. * fix(frpc): materialize binaries at publish + guard version reuse Address review: (1) each platform package now has a prepack hook that runs prepare-frpc-packages.mjs for its own target, so publishing from a fresh checkout always includes the binary in the tarball; (2) prepare skips only when a .frpc-version marker matches the current FRPC_VERSION, so a binary left from a previous version is re-downloaded + re-verified rather than republished stale. prepare accepts an optional single-target arg for the per-package hook. * chore(frpc): bump platform packages to 0.1.115 (lockstep with corsair) * fix(frpc): add build script so publish tooling materializes the binary publish-changed.mjs runs `pnpm --filter <pkg> build` before publishing each package. The frpc packages had no build script; add one that runs the prepare step (prepack delegates to it), so both release paths — publish-changed.mjs and the turbo `pnpm release` — materialize each binary, not just the prepack hook. * fix(frpc): drop build task + fix EXDEV in prepare script The build task I added made turbo run prepare-frpc-packages.mjs for all six packages during the www app deploy (they are in www's dep graph via corsair's optionalDeps), which both wasted work and failed. Revert to prepack-only: publish-changed.mjs's `pnpm --filter build` is a lenient no-op and `pnpm publish` still fires prepack; turbo no longer runs anything for these packages. Also fix a real latent bug the deploy surfaced: prepare renamed the binary from /tmp into the package dir, which is EXDEV (cross-device) on Linux CI. Use copyFileSync so it works regardless of filesystem. * feat(cli): show the CORSAIR banner + live URL on `corsair http` The banner was orphaned in the old `corsair setup` flow; wire it into the `http` command's success output (it printed plain lines before). Swap the pirate glyph for a celebratory banner + the live tunnel URL. * chore(pr-gate): exclude frpc-* binary packages from the plugin gate The frpc-<platform>-<arch> packages are prebuilt binary shims for the dev tunnel, not integrations, so the plugin rules (per-package tests, demo video, one-plugin-per-PR scope) don't apply. Skip them in pluginOf so the gate no longer flags this PR. * chore(scripts): exclude frpc-* binary packages from plugin validators validate:plugins and validate:docs both scan packages/* and treat every non-ignored dir as an integration, so the frpc-<platform>-<arch> binary shims tripped the structural checks (index.ts, endpoints, jest). Skip them the same way the PR gate does. * fix(frpc): make frpc-binary parse under ts-jest and resolve in the ESM build createRequire(import.meta.url) is ESM-only; ts-jest transpiles this file to CJS, where import.meta and a `const require` both fail to parse — breaking every suite that transitively imports it. Seed createRequire from __filename (tsup `shims` defines it in the ESM build), rename the local to nodeRequire, and map corsair/hub to source in jest so slack/linear don't resolve it to the built dist that now carries the import.meta shim. * refactor(frpc): single source of truth for version + checksums The pinned frp version and the SHA256 table the download paths verify against were duplicated across postinstall-frpc.mjs and prepare-frpc-packages.mjs, kept in sync only by a comment — a drift risk on a security-relevant constant. Extract both to scripts/frpc-release.json, read by each script, and ship it via the package `files` so the end-user postinstall resolves it too. frpc-binary.ts keeps its version literal (a runtime cache-path segment, non-security) with a pointer to the JSON. * chore(frpc): bump corsair + frpc packages to 0.1.117 npm latest is 0.1.116 (without optionalDependencies) and 0.1.115 is already published, so the frpc optional deps only reach `npm i corsair` once latest advances past 0.1.116. workspace:* pins each frpc package to the exact 0.1.117 at publish time (verified via pnpm pack). | 29 天前 | |
feat(frpc): ship frpc as per-platform npm packages (#803) * feat(frpc): ship frpc as per-platform npm packages Add @corsair-dev/frpc-<platform>-<arch> optional-dependency packages (the esbuild/Turbopack pattern) so corsair resolves frpc from the npm registry instead of a postinstall download — no build script for pnpm to block. resolveFrpcBinary prefers the installed platform package and falls back to the existing postinstall cache (kept for now). Binaries are materialized at publish by scripts/prepare-frpc-packages.mjs (SHA256-verified, frp Apache-2.0 LICENSE + NOTICE bundled), git-ignored, and version-locked to corsair via workspace:*. * fix(frpc): materialize binaries at publish + guard version reuse Address review: (1) each platform package now has a prepack hook that runs prepare-frpc-packages.mjs for its own target, so publishing from a fresh checkout always includes the binary in the tarball; (2) prepare skips only when a .frpc-version marker matches the current FRPC_VERSION, so a binary left from a previous version is re-downloaded + re-verified rather than republished stale. prepare accepts an optional single-target arg for the per-package hook. * chore(frpc): bump platform packages to 0.1.115 (lockstep with corsair) * fix(frpc): add build script so publish tooling materializes the binary publish-changed.mjs runs `pnpm --filter <pkg> build` before publishing each package. The frpc packages had no build script; add one that runs the prepare step (prepack delegates to it), so both release paths — publish-changed.mjs and the turbo `pnpm release` — materialize each binary, not just the prepack hook. * fix(frpc): drop build task + fix EXDEV in prepare script The build task I added made turbo run prepare-frpc-packages.mjs for all six packages during the www app deploy (they are in www's dep graph via corsair's optionalDeps), which both wasted work and failed. Revert to prepack-only: publish-changed.mjs's `pnpm --filter build` is a lenient no-op and `pnpm publish` still fires prepack; turbo no longer runs anything for these packages. Also fix a real latent bug the deploy surfaced: prepare renamed the binary from /tmp into the package dir, which is EXDEV (cross-device) on Linux CI. Use copyFileSync so it works regardless of filesystem. * feat(cli): show the CORSAIR banner + live URL on `corsair http` The banner was orphaned in the old `corsair setup` flow; wire it into the `http` command's success output (it printed plain lines before). Swap the pirate glyph for a celebratory banner + the live tunnel URL. * chore(pr-gate): exclude frpc-* binary packages from the plugin gate The frpc-<platform>-<arch> packages are prebuilt binary shims for the dev tunnel, not integrations, so the plugin rules (per-package tests, demo video, one-plugin-per-PR scope) don't apply. Skip them in pluginOf so the gate no longer flags this PR. * chore(scripts): exclude frpc-* binary packages from plugin validators validate:plugins and validate:docs both scan packages/* and treat every non-ignored dir as an integration, so the frpc-<platform>-<arch> binary shims tripped the structural checks (index.ts, endpoints, jest). Skip them the same way the PR gate does. * fix(frpc): make frpc-binary parse under ts-jest and resolve in the ESM build createRequire(import.meta.url) is ESM-only; ts-jest transpiles this file to CJS, where import.meta and a `const require` both fail to parse — breaking every suite that transitively imports it. Seed createRequire from __filename (tsup `shims` defines it in the ESM build), rename the local to nodeRequire, and map corsair/hub to source in jest so slack/linear don't resolve it to the built dist that now carries the import.meta shim. * refactor(frpc): single source of truth for version + checksums The pinned frp version and the SHA256 table the download paths verify against were duplicated across postinstall-frpc.mjs and prepare-frpc-packages.mjs, kept in sync only by a comment — a drift risk on a security-relevant constant. Extract both to scripts/frpc-release.json, read by each script, and ship it via the package `files` so the end-user postinstall resolves it too. frpc-binary.ts keeps its version literal (a runtime cache-path segment, non-security) with a pointer to the JSON. * chore(frpc): bump corsair + frpc packages to 0.1.117 npm latest is 0.1.116 (without optionalDependencies) and 0.1.115 is already published, so the frpc optional deps only reach `npm i corsair` once latest advances past 0.1.116. workspace:* pins each frpc package to the exact 0.1.117 at publish time (verified via pnpm pack). | 29 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
fix(googledrive): update plugin docs examples (#1411) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
Feat/integration kibana (#1307) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
feat(mcp): subpath re-exports (mastra/langchain/llamaindex) + turnkey stdio server (#1726) * feat(mastra): add @corsair-dev/mastra ToolProvider for Mastra * feat(mastra): move to adapters/ and address review - move packages/mastra -> adapters/mastra; wire adapters/* into the workspace, publish-changed, deploy/pr-checks, and turbo filters - resolveTenant: a decodable connectionId is authoritative over the tenant function (authorize and resolve can't diverge) - add getToolSchema for the editor tool-detail view - add revokeConnection + supportsRevoke (via corsair manage.disconnect) - peer @mastra/core >=1.64.0; form-field docstrings; README tool recipes - demo/mastra: minimal Mastra playground app * fix(mastra): harden tenant isolation and close review gaps - resolveTenant: the configured tenant is authoritative. A pinned string is never overridden by a connectionId, and when the caller is known a connectionId naming a different tenant is rejected (no cross-tenant access). A fresh connection under a function resolver throws instead of silently opening OAuth under a fallback tenant (Mastra passes no context to authorize). - Document connectionId as an unsigned, server-minted handle. - Require zod ^4.4.0 so z.unknown() rejects omitted required fields. - CI: build/test the full lane over adapters/* too, not just packages/*. - demo: pin the LLM gateway host; ignore SQLite sidecar files. * fix(mastra): optional @mastra/core peer, run checks in CI, document fresh-auth limit * feat(mcp): re-export @corsair-dev/mastra via ./mastra subpath The Mastra ToolProvider now has one home: @corsair-dev/mastra. mcp re-exports it from a dedicated subpath instead of carrying a copy, so the two never drift. Subpath, not the main barrel: the provider extends @mastra/core BaseToolProvider, so importing it evaluates @mastra/core. Keeping it under ./mastra means consumers of @corsair-dev/mcp on other frameworks never load @mastra/core (optional peer). Bump the @mastra/core peer to >=1.64.0 to match what the provider needs. * fix(mcp): pin demo LLM baseURL to the gateway * feat(mcp): re-export langchain and llamaindex adapters on subpaths * docs(adapters): add LangChain and LlamaIndex adapter pages * feat(mcp): add env-configured stdio bin for MCP registries * Update package.json * fix(mcp): correct corsair_permissions schema in bin and demos The turnkey stdio bin and the sqlite demos created corsair_permissions with (account_id, endpoint, status), but the permissions runtime inserts and queries token, plugin, args, tenant_id, expires_at and error. Any permission-gated operation would fail with missing-column errors. Align all three schemas with demo/testing/migration.sql. * fix(mastra): reject tool slugs outside the exposed API operations resolveToolsVNext invoked any dotted path the caller passed as a tool slug, so a management/non-API operation (e.g. manage.disconnect) could be executed even though discovery only exposes type: 'api' operations (CWE-470). Validate each slug against the discovered API set at the single resolution chokepoint, after tenant resolution. Adds a guard assertion. * test(langchain): add runnable demo mirroring demo/mastra Real-usage harness for @corsair-dev/langchain: corsairTools -> LangGraph createReactAgent, model routed through the Corsair LLM gateway, sqlite store with the corrected corsair_permissions schema. Run with pnpm --filter corsair-langchain-demo test (needs real Hub + gateway keys). * fix(mcp): reject databases with an outdated permissions schema CREATE TABLE IF NOT EXISTS is a no-op against a database created by an older schema, so a reused CORSAIR_DB_PATH could lack the permission-runtime columns and fail with missing-column errors mid-operation. Check the corsair_permissions columns at startup and exit with a clear message if the database is incompatible. Also removes internal comment markers. * fix(mcp): run plugins with managed auth in the turnkey bin The bin supplies Hub credentials but instantiated each plugin with no options, so plugins defaulted to api_key auth and a fresh npx run had no usable credentials. Pass authType: 'managed' to match the Hub-backed flow. Also tighten the sqlite handle to a typed interface and document the remaining dynamic-import assertions. | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
docs(resend): pin list/send on the overview (#1696) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): bump corsair, cli, mcp, studio, ui for publish (#1464) #1460 added package READMEs and npm metadata but bumped no versions, so npm still serves the pre-#1460 tarballs: @corsair-dev/mcp has no README, corsair's description renders as README markup, and studio/ui ship no license field. Patch-bump the five so a publish ships #1460's content. | 11 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
docs(trello): pin list/create-card on the overview (#1263) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): bump corsair, cli, mcp, studio, ui for publish (#1464) #1460 added package READMEs and npm metadata but bumped no versions, so npm still serves the pre-#1460 tarballs: @corsair-dev/mcp has no README, corsair's description renders as README markup, and studio/ui ship no license field. Patch-bump the five so a publish ships #1460's content. | 11 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
feat: add Veriphone integration (#1321) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore: fill plugin README and npm metadata gaps (#1728) | 3 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 | |
chore(sdk): generate plugin READMEs, npm metadata, and patch bumps (#1465) | 4 天前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 2 个月前 | ||
| 3 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 3 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 1 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 1 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 29 天前 | ||
| 29 天前 | ||
| 29 天前 | ||
| 29 天前 | ||
| 29 天前 | ||
| 29 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 11 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 11 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 3 天前 | ||
| 4 天前 | ||
| 4 天前 | ||
| 4 天前 |