Read surrounding docstrings and non-obvious comments before changing behavior. They are local contracts; update them only when their owned behavior changes, and keep them aligned with the current code. Read…
This package contains Dify's repository-level Cucumber scenarios with Playwright as the browser layer. This file owns current package architecture, runtime, session and tag semantics, seed, protocol, and cleanup contracts. The…
Web owns application-specific requirements and consumes shared architecture guidance from skills and primitive contracts from Dify UI. Link to those owners instead of redefining their rules here. This version has…
You are a lazy senior developer. Lazy means efficient, not careless. The best code is the code never written. Before writing any code, stop at the first rung that holds: The ladder runs after you understand the problem, not instead of it: read the task and the code it touches, trace the real flow end to end, then climb. Bug fix = root cause, not symptom: a report names a symptom. Grep every caller of the function you touch and…
Set permissions: {} at the workflow level and grant the minimum needed per-job. Prefer GitHub-provided (actions/*) and Vercel-owned actions. For third-party actions: ${{ ... }} is interpolated into the script before bash runs, so untrusted values (PR title, branch name, issue body) can break out and execute. Route them through an env var and quote on use:
This version has breaking changes — APIs, conventions, and file structure may all differ from your training data. Read the relevant guide in dist/docs/ before writing any code. Heed deprecation notices.
Turbopack is a general-purpose bundler that is built and designed for Next.js, but is not necessarily Next.js-specific. Keep Next.js concepts out of it.
GitHub Spec Kit is a comprehensive toolkit for implementing Spec-Driven Development (SDD) - a methodology that emphasizes creating clear specifications before implementation. The toolkit includes templates, scripts, and workflows that guide development teams through a structured approach to building software. Specify CLI is the command-line interface that bootstraps projects with the Spec Kit framework. It sets up the necessary directory structures, templates, and AI agent integrations to support the Spec-Driven Development workflow. The toolkit supports multiple AI coding assistants, allowing…
In the codex-rs folder where the rust code lives: - Crate names are prefixed with codex-. For example, the core folder's crate is named codex-core - When using format! and you can inline variables into {}, always do that. - Install any commands the repo relies on (for example just, rg, or cargo-insta) if they aren't already available before running instructions here. - Never add or modify any code related to CODEXSANDBOXNETWORKDISABLEDENVVAR or CODEXSANDBOXENVVAR. - You operate in a sandbox…
When changing the paste-burst or chat-composer state machines in this folder, keep the docs in sync: - Update the relevant module docs (chatcomposer.rs and/or pasteburst.rs) so they remain a readable, top-down explanation of the current behavior. - Keep implementations/docstrings aligned unless a divergence is intentional and documented. Practical check: - After edits, sanity-check that docs mention only APIs/behavior that exist in code (especially the Enter/newline paths and disablepasteburst semantics).
This project has a graphify knowledge graph at graphify-out/. Rules: - When working on Graphify itself, use the repository's existing Graphify guidance. For codebase questions, prefer scoped graph queries where available; use the report for broad orientation. Do not use the graph as evidence when the task concerns the graph's correctness itself. - If graphify-out/wiki/index.md exists, navigate it instead of reading raw files - After modifying code files in this session, run graphify update . to keep the graph current…
pnpm 11 + Turborepo monorepo. Requires Node >= 22.13. Every PR must pass typecheck + lint (one workflow), Prettier, and a typos check. Other checks are path-filtered: Studio unit tests/build and the lint ratchet (ESLint warning count must not increase) run on apps/studio/** changes; app-specific test suites run on their own paths. Never hand-edit generated files: packages/api-types/types/*, */routeTree.gen.ts, **/generated/, apps/docs/features/docs/generated/, apps/www/.generated/**, `supabase/functions/common/database-
Next.js app router + MDX. Dev server: pnpm dev:docs → http://localhost:3001/docs (the bare / 404s). style-guide/ holds the docs style guide as plain markdown. Load the file you need rather than the whole directory. No tool enforces the guide, so applying it is the author's job, or the skill's. Load these before working. pm-the-docs, write-the-docs, edit-the-docs, ask-the-docs, and review-the-docs back the docs authoring process. See CONTRIBUTING.md for which stage each covers. They apply the style guide above. For architecture questions…
When starting the dev server, run: Full documentation: https://docs.astro.build Consult these guides before working on related tasks: To run a full production build, run: Content lives under src/content/guides/*.{md,mdx}. Keep it plain GitHub-Flavored Markdown: - No custom/JSX components in guide bodies — content is also exported as plain .md (see below), and a component wouldn't survive that export. - For callouts, use GitHub's native alert syntax (> [!NOTE], > [!TIP], > [!IMPORTANT], > [!WARNING], > [!CAUTION]) — the build renders these…