Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions templates/assistant-ui/.cursor/rules/echo_rules.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
description: Echo Next.js template rules for server routes, client providers, and safe env usage
globs: **/*.{ts,tsx,js,jsx,mjs,cjs}
---

# Echo Next.js template rules

- Keep Echo server wiring centralized in `src/echo/index.ts` (or `echo.ts` in this template) and only expose handlers through the App Router echo route.
- Keep the echo route as a thin passthrough (`export const { GET, POST } = handlers`) in `app/api/echo/[...echo]/route.ts` (or `[...path]/route.ts`).
- Use `ECHO_APP_ID` for server-side Echo setup and `NEXT_PUBLIC_ECHO_APP_ID` for client-side provider config.
- In client components, import from `@merit-systems/echo-next-sdk/client`; in server code, import from `@merit-systems/echo-next-sdk`.
- Do not expose provider API keys or secrets in client code. Route model calls through server route handlers.
- Preserve existing App Router conventions, path aliases, and component structure used by this template.
13 changes: 13 additions & 0 deletions templates/authjs/.cursor/rules/echo_rules.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
description: Echo Next.js template rules for server routes, client providers, and safe env usage
globs: **/*.{ts,tsx,js,jsx,mjs,cjs}
---

# Echo Next.js template rules

- Keep Echo server wiring centralized in `src/echo/index.ts` (or `echo.ts` in this template) and only expose handlers through the App Router echo route.
- Keep the echo route as a thin passthrough (`export const { GET, POST } = handlers`) in `app/api/echo/[...echo]/route.ts` (or `[...path]/route.ts`).
- Use `ECHO_APP_ID` for server-side Echo setup and `NEXT_PUBLIC_ECHO_APP_ID` for client-side provider config.
- In client components, import from `@merit-systems/echo-next-sdk/client`; in server code, import from `@merit-systems/echo-next-sdk`.
- Do not expose provider API keys or secrets in client code. Route model calls through server route handlers.
- Preserve existing App Router conventions, path aliases, and component structure used by this template.
13 changes: 13 additions & 0 deletions templates/echo-cli/.cursor/rules/echo_rules.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
description: Echo CLI template rules for command architecture, auth flows, and secure wallet handling
globs: **/*.{ts,js,mjs,cjs}
---

# Echo CLI template rules

- Define CLI commands in `src/index.ts` using Commander and keep command handlers thin.
- Put business logic in existing modules (`src/core`, `src/auth`, `src/utils`, `src/config`) instead of inlining logic in command definitions.
- Read `ECHO_APP_ID` from environment-backed constants and keep configuration centralized in `src/constants.ts`.
- Never log or persist sensitive values (private keys, tokens, session secrets) outside secure keychain/storage paths already used by this template.
- Reuse existing print, validation, and error utilities for consistent CLI output and failure handling.
- Preserve current async command patterns (`process.exit` semantics, prompt cancellation handling, and auth gating behavior).
13 changes: 13 additions & 0 deletions templates/next-chat/.cursor/rules/echo_rules.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
description: Echo Next.js template rules for server routes, client providers, and safe env usage
globs: **/*.{ts,tsx,js,jsx,mjs,cjs}
---

# Echo Next.js template rules

- Keep Echo server wiring centralized in `src/echo/index.ts` (or `echo.ts` in this template) and only expose handlers through the App Router echo route.
- Keep the echo route as a thin passthrough (`export const { GET, POST } = handlers`) in `app/api/echo/[...echo]/route.ts` (or `[...path]/route.ts`).
- Use `ECHO_APP_ID` for server-side Echo setup and `NEXT_PUBLIC_ECHO_APP_ID` for client-side provider config.
- In client components, import from `@merit-systems/echo-next-sdk/client`; in server code, import from `@merit-systems/echo-next-sdk`.
- Do not expose provider API keys or secrets in client code. Route model calls through server route handlers.
- Preserve existing App Router conventions, path aliases, and component structure used by this template.
13 changes: 13 additions & 0 deletions templates/next-image/.cursor/rules/echo_rules.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
description: Echo Next.js template rules for server routes, client providers, and safe env usage
globs: **/*.{ts,tsx,js,jsx,mjs,cjs}
---

# Echo Next.js template rules

- Keep Echo server wiring centralized in `src/echo/index.ts` (or `echo.ts` in this template) and only expose handlers through the App Router echo route.
- Keep the echo route as a thin passthrough (`export const { GET, POST } = handlers`) in `app/api/echo/[...echo]/route.ts` (or `[...path]/route.ts`).
- Use `ECHO_APP_ID` for server-side Echo setup and `NEXT_PUBLIC_ECHO_APP_ID` for client-side provider config.
- In client components, import from `@merit-systems/echo-next-sdk/client`; in server code, import from `@merit-systems/echo-next-sdk`.
- Do not expose provider API keys or secrets in client code. Route model calls through server route handlers.
- Preserve existing App Router conventions, path aliases, and component structure used by this template.
13 changes: 13 additions & 0 deletions templates/next-video-template/.cursor/rules/echo_rules.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
description: Echo Next.js template rules for server routes, client providers, and safe env usage
globs: **/*.{ts,tsx,js,jsx,mjs,cjs}
---

# Echo Next.js template rules

- Keep Echo server wiring centralized in `src/echo/index.ts` (or `echo.ts` in this template) and only expose handlers through the App Router echo route.
- Keep the echo route as a thin passthrough (`export const { GET, POST } = handlers`) in `app/api/echo/[...echo]/route.ts` (or `[...path]/route.ts`).
- Use `ECHO_APP_ID` for server-side Echo setup and `NEXT_PUBLIC_ECHO_APP_ID` for client-side provider config.
- In client components, import from `@merit-systems/echo-next-sdk/client`; in server code, import from `@merit-systems/echo-next-sdk`.
- Do not expose provider API keys or secrets in client code. Route model calls through server route handlers.
- Preserve existing App Router conventions, path aliases, and component structure used by this template.
13 changes: 13 additions & 0 deletions templates/next/.cursor/rules/echo_rules.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
description: Echo Next.js template rules for server routes, client providers, and safe env usage
globs: **/*.{ts,tsx,js,jsx,mjs,cjs}
---

# Echo Next.js template rules

- Keep Echo server wiring centralized in `src/echo/index.ts` (or `echo.ts` in this template) and only expose handlers through the App Router echo route.
- Keep the echo route as a thin passthrough (`export const { GET, POST } = handlers`) in `app/api/echo/[...echo]/route.ts` (or `[...path]/route.ts`).
- Use `ECHO_APP_ID` for server-side Echo setup and `NEXT_PUBLIC_ECHO_APP_ID` for client-side provider config.
- In client components, import from `@merit-systems/echo-next-sdk/client`; in server code, import from `@merit-systems/echo-next-sdk`.
- Do not expose provider API keys or secrets in client code. Route model calls through server route handlers.
- Preserve existing App Router conventions, path aliases, and component structure used by this template.
13 changes: 13 additions & 0 deletions templates/nextjs-api-key-template/.cursor/rules/echo_rules.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
description: Echo Next.js template rules for server routes, client providers, and safe env usage
globs: **/*.{ts,tsx,js,jsx,mjs,cjs}
---

# Echo Next.js template rules

- Keep Echo server wiring centralized in `src/echo/index.ts` (or `echo.ts` in this template) and only expose handlers through the App Router echo route.
- Keep the echo route as a thin passthrough (`export const { GET, POST } = handlers`) in `app/api/echo/[...echo]/route.ts` (or `[...path]/route.ts`).
- Use `ECHO_APP_ID` for server-side Echo setup and `NEXT_PUBLIC_ECHO_APP_ID` for client-side provider config.
- In client components, import from `@merit-systems/echo-next-sdk/client`; in server code, import from `@merit-systems/echo-next-sdk`.
- Do not expose provider API keys or secrets in client code. Route model calls through server route handlers.
- Preserve existing App Router conventions, path aliases, and component structure used by this template.
12 changes: 12 additions & 0 deletions templates/react-chat/.cursor/rules/echo_rules.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
description: Echo React (Vite) template rules for provider setup, hooks, and client-safe patterns
globs: **/*.{ts,tsx,js,jsx,mjs,cjs}
---

# Echo React template rules

- Keep Echo provider setup at the app root (`src/main.tsx` or `src/App.tsx`) and pass `import.meta.env.VITE_ECHO_APP_ID`.
- Use hooks and helpers from `@merit-systems/echo-react-sdk` (`useEcho`, `useChat`, `EchoTokens`, `EchoProvider`) instead of custom wrappers unless needed.
- Keep all credentials and provider secrets out of client code; only public Echo app ID values belong in Vite env vars.
- Follow existing Vite + React patterns in this template (module paths, component layout, styling approach, and TypeScript strictness).
- For chat and generation flows, keep streaming and message-state logic in the existing component boundaries.
12 changes: 12 additions & 0 deletions templates/react-image/.cursor/rules/echo_rules.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
description: Echo React (Vite) template rules for provider setup, hooks, and client-safe patterns
globs: **/*.{ts,tsx,js,jsx,mjs,cjs}
---

# Echo React template rules

- Keep Echo provider setup at the app root (`src/main.tsx` or `src/App.tsx`) and pass `import.meta.env.VITE_ECHO_APP_ID`.
- Use hooks and helpers from `@merit-systems/echo-react-sdk` (`useEcho`, `useChat`, `EchoTokens`, `EchoProvider`) instead of custom wrappers unless needed.
- Keep all credentials and provider secrets out of client code; only public Echo app ID values belong in Vite env vars.
- Follow existing Vite + React patterns in this template (module paths, component layout, styling approach, and TypeScript strictness).
- For chat and generation flows, keep streaming and message-state logic in the existing component boundaries.
12 changes: 12 additions & 0 deletions templates/react/.cursor/rules/echo_rules.mdc
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
description: Echo React (Vite) template rules for provider setup, hooks, and client-safe patterns
globs: **/*.{ts,tsx,js,jsx,mjs,cjs}
---

# Echo React template rules

- Keep Echo provider setup at the app root (`src/main.tsx` or `src/App.tsx`) and pass `import.meta.env.VITE_ECHO_APP_ID`.
- Use hooks and helpers from `@merit-systems/echo-react-sdk` (`useEcho`, `useChat`, `EchoTokens`, `EchoProvider`) instead of custom wrappers unless needed.
- Keep all credentials and provider secrets out of client code; only public Echo app ID values belong in Vite env vars.
- Follow existing Vite + React patterns in this template (module paths, component layout, styling approach, and TypeScript strictness).
- For chat and generation flows, keep streaming and message-state logic in the existing component boundaries.