@znora/create-chart-project
v0.4.0
Published
Scaffolder run via `npx @znora/create-chart-project` from the chart's 'Connect Claude Code' panel. Drops a customer-themed project folder with CLAUDE.md, .mcp.json wired to @znora/chart-mcp, and seed templates so the user is one VS-Code-open away from tal
Readme
@znora/create-chart-project
Scaffolder run via npx @znora/create-chart-project from the chart's
"Connect Claude Code" panel. Drops a customer-themed project folder
with CLAUDE.md, .mcp.json (wired to @znora/chart-mcp +
@vasokai/fxbg-mcp), and seed templates so the user is one
code . away from talking to Claude about their chart.
This package is in scaffold state (V1 phase 1). The CLI works
end-to-end against the generic default template; customer-specific
templates land in Phase 4 alongside FB's adapter implementation.
Usage
npx @znora/create-chart-project \
--customer forexbulgaria \
--token <pairing-token-from-chart-panel> \
--ws-url wss://forexbulgaria.bg/ws \
my-strategy-projectThen:
cd my-strategy-project
code . # open in VS CodeClaude Code reads .mcp.json on session start and spawns the MCP
servers with the right env. The user is paired to their chart
session immediately.
How customer-specific templates work
templates/<customer-id>/ overrides templates/default/. Phase 4
will land FB's directory (templates/forexbulgaria/) with FB-branded
CLAUDE.md, FB-specific seed strategies (e.g. one of the academy's
canonical CISD examples pre-loaded), and FB's link to the academy
membership flow inside the README.
Until those land, every customer gets the generic ZNORA template.
Placeholder substitution
Template files are text + {{key}} placeholders. The scaffolder
substitutes:
| Placeholder | Replaced with |
|---|---|
| {{customer_id}} | --customer arg |
| {{pairing_token}} | --token arg |
| {{ws_url}} | --ws-url arg |
| {{project_name}} | basename of the target directory |
Filenames support substitution too. Files starting with _dot_ get
that prefix stripped on output (npm strips dotfiles from package
contents otherwise) — _dot_mcp.json ships as .mcp.json in the
generated project.
Dev
pnpm --filter @znora/create-chart-project build
pnpm --filter @znora/create-chart-project dev -- \
--customer forexbulgaria \
--token test \
--ws-url ws://localhost:8080 \
/tmp/test-project