2025-11-24 11:23:15 +01:00
|
|
|
{
|
2026-03-04 13:23:34 -08:00
|
|
|
"name": "denchclaw",
|
2026-03-04 16:32:58 -08:00
|
|
|
"version": "2.0.1",
|
2026-02-11 23:38:34 -08:00
|
|
|
"description": "AI-powered CRM platform with multi-channel agent gateway, DuckDB workspace, and knowledge management",
|
2026-01-31 21:13:13 +09:00
|
|
|
"keywords": [],
|
2026-02-16 05:38:11 +01:00
|
|
|
"homepage": "https://github.com/openclaw/openclaw#readme",
|
|
|
|
|
"bugs": {
|
|
|
|
|
"url": "https://github.com/openclaw/openclaw/issues"
|
|
|
|
|
},
|
2026-01-31 21:13:13 +09:00
|
|
|
"license": "MIT",
|
|
|
|
|
"author": "",
|
2026-02-16 05:38:11 +01:00
|
|
|
"repository": {
|
|
|
|
|
"type": "git",
|
|
|
|
|
"url": "git+https://github.com/openclaw/openclaw.git"
|
|
|
|
|
},
|
2025-11-24 11:23:15 +01:00
|
|
|
"bin": {
|
2026-03-04 16:32:58 -08:00
|
|
|
"dench": "denchclaw.mjs",
|
|
|
|
|
"denchclaw": "denchclaw.mjs"
|
2026-02-16 05:38:11 +01:00
|
|
|
},
|
2025-12-21 03:48:23 +01:00
|
|
|
"files": [
|
Web app: switch to Next.js standalone build for npm packaging
Ship a self-contained standalone server with the npm package so
`npm i -g ironclaw` can serve the web UI without runtime `npm install`
or `next build`. This eliminates the fragile first-boot build step
and cuts the cold-start time for the gateway web app.
Changes:
- next.config.ts: enable `output: "standalone"` and set
`outputFileTracingRoot` to the monorepo root so pnpm workspace
deps are traced correctly. Remove the now-unnecessary manual
webpack externals for Node.js built-ins.
- package.json: update `files` to ship only the standalone build
output, static assets, and public dir (instead of the entire
`apps/web/` tree). Add `web:build` and `web:prepack` to the
`prepack` script so the standalone server is built and its
static/public assets are copied into place before publish. Bump
version to 2026.2.10-1.5.
- server-web-app.ts: rewrite the web app lifecycle to prefer the
pre-built standalone `server.js` in production. Add
`resolveStandaloneServerJs`, `hasStandaloneBuild`,
`hasLegacyNextBuild`, and `isInWorkspace` helpers. In dev
workspaces, fall back to building on-the-fly or legacy
`next start`. Export key functions for testability.
- server-web-app.test.ts: add comprehensive unit tests covering
path resolution, standalone/legacy build detection,
ensureWebAppBuilt scenarios (skip, disabled, dev, standalone,
legacy, missing), startWebAppIfEnabled (skip, disabled, null
config, missing dir, standalone start, missing build error,
default port, graceful stop).
- workspace-sidebar.tsx: update sidebar branding to "Ironclaw".
Published as ironclaw@2026.2.10-1.5.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 19:03:01 -08:00
|
|
|
"apps/web/.next/standalone/",
|
|
|
|
|
"apps/web/.next/static/",
|
|
|
|
|
"apps/web/public/",
|
2026-01-31 20:20:17 -06:00
|
|
|
"LICENSE",
|
2026-03-04 16:32:58 -08:00
|
|
|
"denchclaw.mjs",
|
2026-01-31 20:20:17 -06:00
|
|
|
"README.md",
|
2026-02-13 01:52:09 +08:00
|
|
|
"assets/",
|
|
|
|
|
"dist/",
|
2026-02-03 22:04:17 +09:00
|
|
|
"skills/"
|
2025-12-21 03:48:23 +01:00
|
|
|
],
|
2026-01-31 21:13:13 +09:00
|
|
|
"type": "module",
|
2026-03-01 16:11:40 -08:00
|
|
|
"main": "dist/entry.js",
|
2026-01-31 21:13:13 +09:00
|
|
|
"exports": {
|
2026-03-01 16:11:40 -08:00
|
|
|
".": "./dist/entry.js",
|
2026-03-04 16:32:58 -08:00
|
|
|
"./cli-entry": "./denchclaw.mjs"
|
2026-01-31 21:13:13 +09:00
|
|
|
},
|
2025-11-24 11:23:15 +01:00
|
|
|
"scripts": {
|
2026-03-04 16:32:58 -08:00
|
|
|
"build": "tsdown",
|
|
|
|
|
"check": "pnpm format:check && pnpm lint",
|
|
|
|
|
"denchclaw": "node denchclaw.mjs",
|
|
|
|
|
"dev": "node denchclaw.mjs",
|
2026-02-09 17:09:55 -08:00
|
|
|
"format": "oxfmt --write",
|
|
|
|
|
"format:check": "oxfmt --check",
|
2026-02-03 21:44:54 +09:00
|
|
|
"lint": "oxlint --type-aware",
|
2026-03-01 16:11:40 -08:00
|
|
|
"prepack": "pnpm build && pnpm web:build && pnpm web:prepack",
|
2026-03-04 16:32:58 -08:00
|
|
|
"start": "node denchclaw.mjs",
|
|
|
|
|
"test": "pnpm test:cli && pnpm --dir apps/web test",
|
|
|
|
|
"test:cli": "vitest run --config vitest.unit.config.ts src/cli/run-main.test.ts src/cli/bootstrap-external.test.ts src/cli/bootstrap-external.bootstrap-command.test.ts src/cli/workspace-seed.test.ts src/cli/web-runtime.test.ts src/cli/web-runtime-command.test.ts",
|
|
|
|
|
"test:web": "pnpm --dir apps/web test",
|
2026-02-06 15:28:35 -08:00
|
|
|
"web:build": "pnpm --dir apps/web build",
|
2026-02-08 22:21:20 -08:00
|
|
|
"web:dev": "pnpm --dir apps/web dev",
|
Web app: switch to Next.js standalone build for npm packaging
Ship a self-contained standalone server with the npm package so
`npm i -g ironclaw` can serve the web UI without runtime `npm install`
or `next build`. This eliminates the fragile first-boot build step
and cuts the cold-start time for the gateway web app.
Changes:
- next.config.ts: enable `output: "standalone"` and set
`outputFileTracingRoot` to the monorepo root so pnpm workspace
deps are traced correctly. Remove the now-unnecessary manual
webpack externals for Node.js built-ins.
- package.json: update `files` to ship only the standalone build
output, static assets, and public dir (instead of the entire
`apps/web/` tree). Add `web:build` and `web:prepack` to the
`prepack` script so the standalone server is built and its
static/public assets are copied into place before publish. Bump
version to 2026.2.10-1.5.
- server-web-app.ts: rewrite the web app lifecycle to prefer the
pre-built standalone `server.js` in production. Add
`resolveStandaloneServerJs`, `hasStandaloneBuild`,
`hasLegacyNextBuild`, and `isInWorkspace` helpers. In dev
workspaces, fall back to building on-the-fly or legacy
`next start`. Export key functions for testability.
- server-web-app.test.ts: add comprehensive unit tests covering
path resolution, standalone/legacy build detection,
ensureWebAppBuilt scenarios (skip, disabled, dev, standalone,
legacy, missing), startWebAppIfEnabled (skip, disabled, null
config, missing dir, standalone start, missing build error,
default port, graceful stop).
- workspace-sidebar.tsx: update sidebar branding to "Ironclaw".
Published as ironclaw@2026.2.10-1.5.
Co-authored-by: Cursor <cursoragent@cursor.com>
2026-02-12 19:03:01 -08:00
|
|
|
"web:install": "pnpm --dir apps/web install",
|
2026-03-04 16:32:58 -08:00
|
|
|
"web:prepack": "cp -r apps/web/public apps/web/.next/standalone/apps/web/public && cp -r apps/web/.next/static apps/web/.next/standalone/apps/web/.next/static"
|
2025-11-24 11:23:15 +01:00
|
|
|
},
|
|
|
|
|
"dependencies": {
|
2026-02-13 09:43:41 +09:00
|
|
|
"@clack/prompts": "^1.0.1",
|
2025-11-24 11:59:10 +01:00
|
|
|
"chalk": "^5.6.2",
|
2026-01-31 06:40:45 +01:00
|
|
|
"commander": "^14.0.3",
|
Ironclaw rebrand: new identity, animated CLI banner, and iron palette
Rebrand the project from the OpenClaw/Lobster identity to Ironclaw with
a new iron-metallic visual language across CLI and web UI.
## CLI identity
- Rename default CLI name from `openclaw` to `ironclaw` (keep `openclaw`
in KNOWN_CLI_NAMES and regex for backward compat)
- Set process.title to `ironclaw`; update all `[openclaw]` log prefixes
to `[ironclaw]`
- Add `IRONCLAW_*` env var checks (IRONCLAW_HIDE_BANNER,
IRONCLAW_NO_RESPAWN, IRONCLAW_NODE_OPTIONS_READY,
IRONCLAW_TAGLINE_INDEX) with fallback to legacy `OPENCLAW_*` variants
## Animated ASCII banner
- Replace the old lobster block-art with a figlet "ANSI Shadow" font
IRONCLAW ASCII wordmark
- Add `gradient-string` dependency for terminal gradient rendering
- Implement iron shimmer animation: a bright highlight sweeps across the
ASCII art (~2.5 s at 12 fps, 3 full gradient cycles) using a rotating
iron-to-silver color array
- Make `emitCliBanner` async to support the animation; update all call
sites (preaction hook, route, run-main) to await it
- Move banner emission earlier in `runCli()` so it appears for all
invocations (bare command, subcommands, help) with the existing
bannerEmitted guard preventing double-emission
## Iron palette and theme
- Rename LOBSTER_PALETTE → IRON_PALETTE in `src/terminal/palette.ts`
with new cool-steel color tokens (steel grey accent, bright silver
highlight, dark iron dim, steel bl info)
- Re-export LOBSTER_PALETTE as backward-compatible alias
- Update `src/terminal/theme.ts` to import and use IRON_PALETTE
## Tagline cleanup
- Remove lobster-themed, Apple-specific, and platform-joke taglines
- Fix smart-quote and em-dash formatting across remaining taglines
- Add "Holiday taglines" comment grouping for date-gated entries
## Web UI
- Add `framer-motion`, `fuse.js`, and `next-themes` to web app deps
- Add custom font files: Bookerly (regular/bold/italic), SpaceGrotesk
(light/regular/medium/semibold/bold), FoundationTitlesHand
- Update chat panel labels: "OpenClaw Chat" → "Ironclaw Chat",
"Message OpenClaw..." → "Message Ironclaw..."
- Update sidebar header: "OpenClaw Dench" → "Ironclaw"
- CSS formatting cleanup: expand single-lins, add consistent
blank lines between selector blocks, normalize child combinator
spacing (li > ul → li>ul)
2026-02-11 23:26:05 -08:00
|
|
|
"gradient-string": "^3.0.0",
|
2025-11-24 11:23:15 +01:00
|
|
|
"json5": "^2.2.3",
|
2026-03-04 16:32:58 -08:00
|
|
|
"tslog": "^4.10.2"
|
2025-11-24 11:23:15 +01:00
|
|
|
},
|
|
|
|
|
"devDependencies": {
|
2026-02-19 14:46:10 +01:00
|
|
|
"@types/node": "^25.3.0",
|
2026-02-21 14:35:10 +01:00
|
|
|
"oxfmt": "0.34.0",
|
|
|
|
|
"oxlint": "^1.49.0",
|
|
|
|
|
"oxlint-tsgolint": "^0.14.2",
|
2026-02-05 19:36:36 +09:00
|
|
|
"tsdown": "^0.20.3",
|
2026-01-31 08:23:10 +00:00
|
|
|
"typescript": "^5.9.3",
|
2026-01-31 17:11:05 +09:00
|
|
|
"vitest": "^4.0.18"
|
2025-11-24 17:33:59 +01:00
|
|
|
},
|
2026-01-31 21:13:13 +09:00
|
|
|
"peerDependencies": {
|
2026-03-01 16:11:40 -08:00
|
|
|
"openclaw": ">=2026.1.0"
|
2026-01-31 21:13:13 +09:00
|
|
|
},
|
|
|
|
|
"engines": {
|
|
|
|
|
"node": ">=22.12.0"
|
|
|
|
|
},
|
|
|
|
|
"packageManager": "pnpm@10.23.0",
|
2026-01-01 17:30:19 +01:00
|
|
|
"pnpm": {
|
2026-03-04 16:32:58 -08:00
|
|
|
"minimumReleaseAge": 2880
|
2025-11-24 11:23:15 +01:00
|
|
|
}
|
2026-01-25 14:16:15 +00:00
|
|
|
}
|