| Dimension | Shared | Only in A | Only in B | Overlap |
|---|---|---|---|---|
| Sections | 0 | 2 | 3 | 0% |
| Commands | 0 | 0 | 4 | 0% |
| Section tags | 2 | 2 | 0 | 50% |
What each file covers
Sections
0 shared · 2 only in A · 3 only in B- − Frontend Workflow
- − Package Contracts
- + Agent Guide
- + Commands
- + Tests And Boundaries
Commands
0 shared · 0 only in A · 4 only in B- + make check
- + make fix
- + make typecheck
- + make test
Section tags
2 shared · 2 only in A · 0 only in B- − test
- − testing-strategy
- code-style
- agent-behaviour
Line diff
langgenius/dify · web/AGENTS.md
@@ −1 @@
1## Frontend Workflow
2
3- Read `docs/test.md` only for frontend test work and `docs/lint.md` only when running or changing static checks.
4- Use the repo-local `how-to-write-component` skill when implementation requires component ownership, state, data-flow, effect, or interaction-boundary decisions. Do not load it for test-only, copy-only, or styling-only changes.
5- Use `frontend-code-review` only for explicit frontend review or audit requests, including test reviews. Use `frontend-testing` when writing or changing Vitest or React Testing Library tests.
6
7## Package Contracts
8
9- User-facing strings must use `web/i18n/en-US/` keys. When adding or renaming a key, update every supported locale with the correct localized value.
10- For new backend calls and migrated surfaces, use generated `consoleQuery` / `consoleClient` APIs from `@/service/client`. Do not add handwritten REST helpers or DTO mirrors, mock-backed app state, or direct edits to generated contracts.
11- Prefer `@langgenius/dify-ui/*` primitives, data attributes, and design tokens. Preserve a visible focus indicator on the final focusable element.
12- Follow `docs/overlay.md` for overlay selection and migration. Migrate a legacy overlay only when the current behavior change actually involves that overlay boundary.
13- For custom SVG icons, follow `../packages/iconify-collections/README.md`; do not add generated React icons under `app/components/base/icons/src/`.
14- `docs/test.md` is the single source of truth for frontend automated-test policy. Skills may route and execute that policy but must not redefine it.
15
langgenius/dify · dify-agent/AGENTS.md
@@ +1 @@
1# Agent Guide
2
3Read 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 `docs/dify-agent/index.md` when changing the public runtime contract.
4
5## Commands
6
7Run package commands from `dify-agent/`:
8
9- Lint: `make check`
10- Format and fix lint: `make fix`
11- Type check: `make typecheck`
12- Tests: `make test`
13
14Use the package's `uv` environment and Pydantic v2 APIs. Inspect current dependency source or official documentation before integrating, implementing, or mocking an API whose runtime contract is not established locally.
15
16## Tests And Boundaries
17
18- Keep local tests under `tests/local/` and mirror the `src/` package structure.
19- Test stable behavior and real dependency boundaries. Do not use local mocks to claim real network, framework wiring, serialization, or third-party runtime coverage.
20- Keep tests, public docs, and local contracts aligned with behavior changes.
21- Preserve the existing runtime and layer owners; do not add generic utilities or compatibility boundaries to bypass them.
22
@@ −1 +1 @@
1−## Frontend Workflow
1+# Agent Guide
22
3−- Read `docs/test.md` only for frontend test work and `docs/lint.md` only when running or changing static checks.
4−- Use the repo-local `how-to-write-component` skill when implementation requires component ownership, state, data-flow, effect, or interaction-boundary decisions. Do not load it for test-only, copy-only, or styling-only changes.
5−- Use `frontend-code-review` only for explicit frontend review or audit requests, including test reviews. Use `frontend-testing` when writing or changing Vitest or React Testing Library tests.
3+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 `docs/dify-agent/index.md` when changing the public runtime contract.
64
7−## Package Contracts
5+## Commands
86
9−- User-facing strings must use `web/i18n/en-US/` keys. When adding or renaming a key, update every supported locale with the correct localized value.
10−- For new backend calls and migrated surfaces, use generated `consoleQuery` / `consoleClient` APIs from `@/service/client`. Do not add handwritten REST helpers or DTO mirrors, mock-backed app state, or direct edits to generated contracts.
11−- Prefer `@langgenius/dify-ui/*` primitives, data attributes, and design tokens. Preserve a visible focus indicator on the final focusable element.
12−- Follow `docs/overlay.md` for overlay selection and migration. Migrate a legacy overlay only when the current behavior change actually involves that overlay boundary.
13−- For custom SVG icons, follow `../packages/iconify-collections/README.md`; do not add generated React icons under `app/components/base/icons/src/`.
14−- `docs/test.md` is the single source of truth for frontend automated-test policy. Skills may route and execute that policy but must not redefine it.
7+Run package commands from `dify-agent/`:
8+
9+- Lint: `make check`
10+- Format and fix lint: `make fix`
11+- Type check: `make typecheck`
12+- Tests: `make test`
13+
14+Use the package's `uv` environment and Pydantic v2 APIs. Inspect current dependency source or official documentation before integrating, implementing, or mocking an API whose runtime contract is not established locally.
15+
16+## Tests And Boundaries
17+
18+- Keep local tests under `tests/local/` and mirror the `src/` package structure.
19+- Test stable behavior and real dependency boundaries. Do not use local mocks to claim real network, framework wiring, serialization, or third-party runtime coverage.
20+- Keep tests, public docs, and local contracts aligned with behavior changes.
21+- Preserve the existing runtime and layer owners; do not add generic utilities or compatibility boundaries to bypass them.
1522
