@simonesiega/codex-limits 1.0.0 → 1.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +45 -14
- package/CODE_OF_CONDUCT.md +120 -0
- package/CONTRIBUTING.md +44 -41
- package/README.md +150 -151
- package/SECURITY.md +28 -11
- package/dist/cli.js +157 -146
- package/dist/copilot.mjs +3 -3
- package/dist/opencode.js +3 -3
- package/dist/pi.js +3 -3
- package/docs/README.md +36 -29
- package/docs/examples/codex-limits-coupons-output.example.json +25 -0
- package/docs/examples/codex-limits-doctor-output.example.json +14 -0
- package/docs/readme/agent-integrations.md +36 -15
- package/docs/readme/agents/copilot.md +21 -39
- package/docs/readme/agents/opencode.md +23 -27
- package/docs/readme/agents/pi.md +21 -30
- package/docs/readme/compatibility.md +36 -42
- package/docs/readme/json-output.md +70 -35
- package/docs/readme/troubleshooting.md +160 -0
- package/docs/schema/codex-limits-coupons.schema.json +107 -0
- package/docs/schema/codex-limits-doctor.schema.json +50 -0
- package/docs/schema/codex-limits.schema.json +2 -1
- package/package.json +26 -5
- package/types/copilot.d.ts +6 -0
- package/types/opencode.d.ts +10 -0
- package/types/pi.d.ts +4 -0
- package/types/index.d.ts +0 -8
package/CHANGELOG.md
CHANGED
|
@@ -16,6 +16,51 @@ All notable changes to codex-limits are documented in this file.
|
|
|
16
16
|
|
|
17
17
|
### Security
|
|
18
18
|
|
|
19
|
+
## [1.2.0] - 2026-08-09
|
|
20
|
+
|
|
21
|
+
### Added
|
|
22
|
+
|
|
23
|
+
- Added a project Code of Conduct with private reporting and enforcement guidance.
|
|
24
|
+
- Added JSON Schemas and sanitized example documents for `codex-limits coupons --json` and `codex-limits doctor --json`.
|
|
25
|
+
- Added `codex-limits agents uninstall` with interactive, named, multi-agent, and `--all` modes for removing recognized OpenCode, pi, and GitHub Copilot CLI integrations.
|
|
26
|
+
- Added automated packed-package compatibility checks that install, load, dispatch, and uninstall `/codex-limits` integrations in real OpenCode, pi, and GitHub Copilot CLI releases.
|
|
27
|
+
|
|
28
|
+
### Changed
|
|
29
|
+
|
|
30
|
+
- Changed the npm package description to include cross-platform CLI and agent integration support.
|
|
31
|
+
|
|
32
|
+
### Fixed
|
|
33
|
+
|
|
34
|
+
- Fixed OpenCode TUI plugin discovery in current hosts by exposing the loader-reserved `@simonesiega/codex-limits/tui` alias.
|
|
35
|
+
- Fixed malformed coupon counters outside JavaScript's safe-integer range to be reported as partial data instead of reaching public output.
|
|
36
|
+
|
|
37
|
+
### Security
|
|
38
|
+
|
|
39
|
+
- Kept agent removal scoped to recognized Codex Limits registrations, revalidating bounded mutation targets before changing them and refusing stale, malformed, symbolic-link, or unrecognized targets while preserving unrelated agent configuration.
|
|
40
|
+
- Hardened local session discovery against sessions-directory replacement races, pinned affected development dependencies to patched `fast-uri` 3.1.5 and `undici` 8.10.0 releases, and added dependency audits to CI and publishing.
|
|
41
|
+
|
|
42
|
+
## [1.1.0] - 2026-07-31
|
|
43
|
+
|
|
44
|
+
### Added
|
|
45
|
+
|
|
46
|
+
- Added explicit OpenCode, pi, and GitHub Copilot CLI package subpath exports while keeping the package root dedicated to OpenCode loading and the internal core private.
|
|
47
|
+
|
|
48
|
+
### Changed
|
|
49
|
+
|
|
50
|
+
- Changed package safety messaging to distinguish read-only inspection commands from the explicitly confirmed `reset` remote mutation.
|
|
51
|
+
- Changed packed-runtime checks to validate the packed CLI on macOS with Node.js 22.
|
|
52
|
+
|
|
53
|
+
### Fixed
|
|
54
|
+
|
|
55
|
+
- Fixed packed-package validation for canonical temporary-directory paths on macOS.
|
|
56
|
+
- Fixed inconsistent reset-coupon counts to be reported as partial data instead of complete availability.
|
|
57
|
+
- Fixed agent summaries to label unknown usage percentages as unknown instead of displaying them as 0%.
|
|
58
|
+
|
|
59
|
+
### Security
|
|
60
|
+
|
|
61
|
+
- Kept usage endpoint metadata and coupon redemption identifiers outside the combined limits data supplied to read-only TUI and agent renderers, and enforced resolved-path containment for local state reads.
|
|
62
|
+
- Bounded pi integration filter matching against adversarial configuration patterns and updated the locked `brace-expansion` dependency to a non-vulnerable release.
|
|
63
|
+
|
|
19
64
|
## [1.0.0] - 2026-07-23
|
|
20
65
|
|
|
21
66
|
### Added
|
|
@@ -43,25 +88,13 @@ All notable changes to codex-limits are documented in this file.
|
|
|
43
88
|
|
|
44
89
|
## [0.1.6] - 2026-07-22
|
|
45
90
|
|
|
46
|
-
### Breaking Changes
|
|
47
|
-
|
|
48
91
|
### Added
|
|
49
92
|
|
|
50
93
|
- Added `codex-limits doctor` and `codex-limits doctor --json` for safe environment, connectivity, local usage, authentication, OpenCode, and pi integration diagnostics.
|
|
51
94
|
- Added the pi agent integration with `codex-limits agents install pi` and a read-only `/codex-limits` overlay that does not send limit data to the LLM.
|
|
52
95
|
|
|
53
|
-
### Changed
|
|
54
|
-
|
|
55
|
-
### Fixed
|
|
56
|
-
|
|
57
|
-
### Removed
|
|
58
|
-
|
|
59
|
-
### Security
|
|
60
|
-
|
|
61
96
|
## [0.1.5] - 2026-07-22
|
|
62
97
|
|
|
63
|
-
### Breaking Changes
|
|
64
|
-
|
|
65
98
|
### Added
|
|
66
99
|
|
|
67
100
|
- Added bundled third-party license notices to published package artifacts.
|
|
@@ -81,8 +114,6 @@ All notable changes to codex-limits are documented in this file.
|
|
|
81
114
|
- Fixed weekly-only usage data to use declared window durations across live and local sources, avoid stale local fallback for recognized live windows, and omit unavailable 5-hour sections from terminal dashboards and the OpenCode integration.
|
|
82
115
|
- Fixed clean production builds and kept terminal rendering compatible with Node.js 20.
|
|
83
116
|
|
|
84
|
-
### Removed
|
|
85
|
-
|
|
86
117
|
### Security
|
|
87
118
|
|
|
88
119
|
- Refused symbolic-link files and path-replacement races when reading bounded local files, including agent configurations.
|
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<img src="docs/photos/logo/logo.png" alt="codex-limits logo" width="180" />
|
|
3
|
+
</p>
|
|
4
|
+
|
|
5
|
+
<h1 align="center">
|
|
6
|
+
Codex Limits Code of Conduct
|
|
7
|
+
</h1>
|
|
8
|
+
|
|
9
|
+
<p align="center">
|
|
10
|
+
Community standards for a respectful, inclusive, and constructive project.
|
|
11
|
+
</p>
|
|
12
|
+
|
|
13
|
+
<p align="center">
|
|
14
|
+
<img src="https://img.shields.io/badge/Contributor%20Covenant-2.1-4baaaa" alt="Contributor Covenant version 2.1" />
|
|
15
|
+
<img src="https://img.shields.io/badge/Community-respectful-brightgreen" alt="Respectful community" />
|
|
16
|
+
</p>
|
|
17
|
+
|
|
18
|
+
## Contents
|
|
19
|
+
|
|
20
|
+
- [Our pledge](#our-pledge)
|
|
21
|
+
- [Expected behavior](#expected-behavior)
|
|
22
|
+
- [Unacceptable behavior](#unacceptable-behavior)
|
|
23
|
+
- [Scope](#scope)
|
|
24
|
+
- [Reporting a conduct issue](#reporting-a-conduct-issue)
|
|
25
|
+
- [Enforcement responsibilities](#enforcement-responsibilities)
|
|
26
|
+
- [Enforcement guidelines](#enforcement-guidelines)
|
|
27
|
+
- [Attribution](#attribution)
|
|
28
|
+
- [Related documentation](#related-documentation)
|
|
29
|
+
|
|
30
|
+
## Our pledge
|
|
31
|
+
|
|
32
|
+
We pledge to make participation in the Codex Limits community a harassment-free experience for everyone, regardless of age, body size, visible or invisible disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socioeconomic status, nationality, personal appearance, race, caste, color, religion, or sexual identity and orientation.
|
|
33
|
+
|
|
34
|
+
We pledge to act and interact in ways that contribute to an open, welcoming, diverse, inclusive, and healthy community.
|
|
35
|
+
|
|
36
|
+
## Expected behavior
|
|
37
|
+
|
|
38
|
+
Examples of behavior that contributes to a positive community include:
|
|
39
|
+
|
|
40
|
+
| Behavior | What it means |
|
|
41
|
+
| -------------------------- | ------------------------------------------------------------------------------------------ |
|
|
42
|
+
| Be respectful | Treat contributors, users, and maintainers with patience and consideration. |
|
|
43
|
+
| Be constructive | Give actionable feedback and focus criticism on ideas, code, and outcomes. |
|
|
44
|
+
| Be collaborative | Share relevant context, listen to other viewpoints, and work toward consensus. |
|
|
45
|
+
| Be accountable | Accept responsibility, apologize when appropriate, and learn from mistakes. |
|
|
46
|
+
| Protect privacy and safety | Use sanitized examples and respect the project's security and redaction rules. |
|
|
47
|
+
| Respect project boundaries | Respect documented decisions about scope, compatibility, safety, and contribution process. |
|
|
48
|
+
|
|
49
|
+
## Unacceptable behavior
|
|
50
|
+
|
|
51
|
+
The following behavior is not acceptable:
|
|
52
|
+
|
|
53
|
+
- harassment, intimidation, stalking, threats, or discriminatory language or imagery;
|
|
54
|
+
- sexualized language, imagery, or attention, including unwelcome advances;
|
|
55
|
+
- trolling, insulting or derogatory comments, personal attacks, or sustained disruption;
|
|
56
|
+
- publishing another person's private information without explicit permission;
|
|
57
|
+
- exposing credentials, private Codex data, private paths, or other sensitive information;
|
|
58
|
+
- pressuring anyone to disclose personal, employment, account, or security information;
|
|
59
|
+
- deliberately disrupting issues, Pull Requests, reviews, releases, or other project work;
|
|
60
|
+
- retaliation against anyone who reports a concern or participates in an investigation;
|
|
61
|
+
- other conduct that would reasonably be considered inappropriate in a professional setting.
|
|
62
|
+
|
|
63
|
+
## Scope
|
|
64
|
+
|
|
65
|
+
This Code of Conduct applies in all project spaces, including:
|
|
66
|
+
|
|
67
|
+
- GitHub issues, Pull Requests, reviews, discussions, and repository content;
|
|
68
|
+
- project-related email and other direct communication;
|
|
69
|
+
- community events or conversations where someone is representing Codex Limits;
|
|
70
|
+
- public spaces when an individual is acting as an official project representative.
|
|
71
|
+
|
|
72
|
+
Representation includes using an official project account, posting from an official channel, or acting with delegated project authority.
|
|
73
|
+
|
|
74
|
+
## Reporting a conduct issue
|
|
75
|
+
|
|
76
|
+
Report abusive, harassing, or otherwise unacceptable behavior privately by emailing [simonesiega1@gmail.com](mailto:simonesiega1@gmail.com) with the subject `Codex Limits conduct report`. Do not open a public issue for a private conduct report.
|
|
77
|
+
|
|
78
|
+
Include only the information needed to understand and review the concern:
|
|
79
|
+
|
|
80
|
+
| Field | What to include |
|
|
81
|
+
| ------------------ | -------------------------------------------------------------------- |
|
|
82
|
+
| Summary | A concise description of what happened. |
|
|
83
|
+
| Location and date | Where and approximately when the behavior occurred. |
|
|
84
|
+
| Supporting context | Relevant links, quotations, or sanitized screenshots when available. |
|
|
85
|
+
| Requested outcome | Any immediate safety concern or resolution you want considered. |
|
|
86
|
+
|
|
87
|
+
All reports will be reviewed as promptly and fairly as reasonably possible. The maintainer will respect the privacy and security of the reporter and affected parties, sharing information only when necessary to investigate or respond.
|
|
88
|
+
|
|
89
|
+
If the report concerns the project maintainer or cannot safely be reported by email, use GitHub's [Report Abuse form](https://support.github.com/contact/report-abuse). Security vulnerabilities should instead follow the private process in [`SECURITY.md`](SECURITY.md#reporting-a-vulnerability).
|
|
90
|
+
|
|
91
|
+
## Enforcement responsibilities
|
|
92
|
+
|
|
93
|
+
Project maintainers are responsible for clarifying and enforcing these standards. They may remove, edit, or reject comments, commits, code, issues, Pull Requests, and other contributions that do not align with this Code of Conduct.
|
|
94
|
+
|
|
95
|
+
Maintainers will communicate moderation decisions when appropriate and will not publicly identify a reporter without permission unless required by law or necessary to address an immediate safety risk.
|
|
96
|
+
|
|
97
|
+
## Enforcement guidelines
|
|
98
|
+
|
|
99
|
+
Maintainers will use these guidelines when determining consequences for behavior that violates this Code of Conduct:
|
|
100
|
+
|
|
101
|
+
| Level | Consequence | Community impact | Response |
|
|
102
|
+
| ----- | ------------- | ------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
|
|
103
|
+
| 1 | Correction | Inappropriate language or behavior with limited impact. | A private explanation of the violation and a request for correction; a public apology may be requested. |
|
|
104
|
+
| 2 | Warning | A single serious incident or repeated behavior after correction. | A formal warning with conditions against further contact or specified behavior for a defined period. |
|
|
105
|
+
| 3 | Temporary ban | Sustained or serious violations, including continued inappropriate behavior. | Temporary exclusion from project interaction and public or private communication with involved participants. |
|
|
106
|
+
| 4 | Permanent ban | A pattern of violations, harassment, threats, or aggression toward individuals. | Permanent exclusion from project spaces and community interaction. |
|
|
107
|
+
|
|
108
|
+
Enforcement decisions will consider context, severity, impact, prior behavior, and the safety of the community.
|
|
109
|
+
|
|
110
|
+
## Attribution
|
|
111
|
+
|
|
112
|
+
This Code of Conduct is adapted from the [Contributor Covenant, version 2.1](https://www.contributor-covenant.org/version/2/1/code_of_conduct.html), available under the [Creative Commons Attribution 4.0 International License](https://creativecommons.org/licenses/by/4.0/).
|
|
113
|
+
|
|
114
|
+
The enforcement guidelines were inspired by [Mozilla's code of conduct enforcement ladder](https://github.com/mozilla/diversity).
|
|
115
|
+
|
|
116
|
+
## Related documentation
|
|
117
|
+
|
|
118
|
+
- Read [`CONTRIBUTING.md`](CONTRIBUTING.md) for contribution workflow and review expectations.
|
|
119
|
+
- Read [`SECURITY.md`](SECURITY.md) for private vulnerability reporting and project safety boundaries.
|
|
120
|
+
- Use the [documentation hub](docs/README.md) to find product, automation, agent, and development guides.
|
package/CONTRIBUTING.md
CHANGED
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
<img src="https://img.shields.io/github/issues/simonesiega/codex-limits" alt="Open issues" />
|
|
19
19
|
</p>
|
|
20
20
|
|
|
21
|
-
Read [`README.md`](README.md) first, then use the [documentation hub](docs/README.md) to find the canonical guide for the area you plan to change.
|
|
21
|
+
Read [`README.md`](README.md) first, follow the [`CODE_OF_CONDUCT.md`](CODE_OF_CONDUCT.md) in every project interaction, then use the [documentation hub](docs/README.md) to find the canonical guide for the area you plan to change.
|
|
22
22
|
|
|
23
23
|
## Contents
|
|
24
24
|
|
|
@@ -39,13 +39,13 @@ Read [`README.md`](README.md) first, then use the [documentation hub](docs/READM
|
|
|
39
39
|
|
|
40
40
|
If you are new to the project, read [`README.md`](README.md) and the [documentation hub](docs/README.md), then choose one focused issue or improvement.
|
|
41
41
|
|
|
42
|
-
| Step | Action
|
|
43
|
-
| ---- |
|
|
44
|
-
| 1 | Fork the repository.
|
|
45
|
-
| 2 | Create a branch from `main`.
|
|
46
|
-
| 3 | Make one focused change.
|
|
47
|
-
| 4 | Run the local checks.
|
|
48
|
-
| 5 | Open a Pull Request with context and rationale. |
|
|
42
|
+
| Step | Action |
|
|
43
|
+
| ---- | ------------------------------------------------------------------------------------------------------ |
|
|
44
|
+
| 1 | Fork the repository. |
|
|
45
|
+
| 2 | Create a branch from `main`. |
|
|
46
|
+
| 3 | Make one focused change. |
|
|
47
|
+
| 4 | Run the local checks. |
|
|
48
|
+
| 5 | Open a [Pull Request](https://github.com/simonesiega/codex-limits/compare) with context and rationale. |
|
|
49
49
|
|
|
50
50
|
## Branch naming
|
|
51
51
|
|
|
@@ -59,9 +59,9 @@ If you are new to the project, read [`README.md`](README.md) and the [documentat
|
|
|
59
59
|
|
|
60
60
|
## Issues
|
|
61
61
|
|
|
62
|
-
Before opening a new issue, check existing [Issues](https://github.com/simonesiega/codex-limits/issues) to avoid duplicates.
|
|
62
|
+
Before opening a new issue, check existing [Issues](https://github.com/simonesiega/codex-limits/issues) to avoid duplicates. Then use the [issue chooser](https://github.com/simonesiega/codex-limits/issues/new/choose) to open the bug-report or feature-request form. Security vulnerabilities must use the private process in [`SECURITY.md`](SECURITY.md#reporting-a-vulnerability), not a public issue.
|
|
63
63
|
|
|
64
|
-
|
|
64
|
+
The issue forms prompt for:
|
|
65
65
|
|
|
66
66
|
| Field | Why it matters |
|
|
67
67
|
| ------------------- | -------------------------------------------------------- |
|
|
@@ -110,6 +110,12 @@ bun run docs:link
|
|
|
110
110
|
bun run docs:schema
|
|
111
111
|
```
|
|
112
112
|
|
|
113
|
+
Audit the locked dependency graph:
|
|
114
|
+
|
|
115
|
+
```bash
|
|
116
|
+
bun run audit
|
|
117
|
+
```
|
|
118
|
+
|
|
113
119
|
Run tests only:
|
|
114
120
|
|
|
115
121
|
```bash
|
|
@@ -122,6 +128,8 @@ Build the package:
|
|
|
122
128
|
bun run build
|
|
123
129
|
```
|
|
124
130
|
|
|
131
|
+
The `Check` workflow also runs `bun run agents:compat` against packed artifacts in real OpenCode, pi, and GitHub Copilot CLI installations. These Linux-only probes intentionally live outside the normal local `bun run check` gate because they download and launch external host releases; see [Compatibility](docs/readme/compatibility.md#tested-environments) for the current version matrix.
|
|
132
|
+
|
|
125
133
|
## Code guidelines
|
|
126
134
|
|
|
127
135
|
Keep changes small, readable, and easy to review.
|
|
@@ -138,39 +146,28 @@ When adding a CLI command, create a focused command module and register it in `s
|
|
|
138
146
|
|
|
139
147
|
## Safety rules
|
|
140
148
|
|
|
141
|
-
`
|
|
149
|
+
[`SECURITY.md`](SECURITY.md#local-data-and-network-behavior) is the canonical reference for local-data, network, redaction, installer, diagnostic, and reset-mutation safeguards. Contributors must preserve those boundaries and use only synthetic or redacted values in output, tests, documentation, and screenshots.
|
|
142
150
|
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
- access tokens;
|
|
146
|
-
- account IDs;
|
|
147
|
-
- auth headers;
|
|
148
|
-
- cookies;
|
|
149
|
-
- raw local Codex files;
|
|
150
|
-
- private environment values.
|
|
151
|
-
|
|
152
|
-
If a change touches local data discovery, live coupon data, warnings, output formatting, or agent integrations, make sure sensitive values are redacted before they can reach the CLI, TUI, JSON output, tests, or screenshots.
|
|
153
|
-
|
|
154
|
-
Command handlers should let the router replace unexpected exceptions with their fixed command failure message. Use `AgentInstallError` only for bounded, deliberately user-safe adapter messages; never pass through a raw filesystem, network, or credential error.
|
|
151
|
+
Command handlers should let the router replace unexpected exceptions with their fixed command failure message. Use `AgentInstallError` or `AgentUninstallError` only for bounded, deliberately user-safe adapter messages; never pass through a raw filesystem, network, or credential error.
|
|
155
152
|
|
|
156
153
|
## Adding a new agent
|
|
157
154
|
|
|
158
155
|
New agents should use the same small adapter shape as [`src/agents/opencode`](src/agents/opencode), [`src/agents/pi`](src/agents/pi), and [`src/agents/copilot`](src/agents/copilot): `format.ts`, `install.ts`, `integration.ts`, and `plugin.ts`. Put reusable presentation and safe configuration behavior in `src/agents/shared`.
|
|
159
156
|
|
|
160
|
-
| Step | Action
|
|
161
|
-
| ---- |
|
|
162
|
-
| 1 | Create `src/agents/<agent-name>` with the standard four-file adapter layout.
|
|
163
|
-
| 2 | Define metadata, optional environment help, `install`, and `inspect` in `integration.ts`.
|
|
164
|
-
| 3 | Keep `plugin.ts` focused on the target host API and load Codex data only through the shared package core.
|
|
165
|
-
| 4 | Register the integration descriptor once in `src/agents/index.ts`; shared
|
|
166
|
-
| 5 | Add
|
|
167
|
-
| 6 | Add `docs/readme/agents/<agent-name>.md`.
|
|
168
|
-
| 7 | Add the integration to [Agent Integrations](docs/readme/agent-integrations.md).
|
|
169
|
-
| 8 |
|
|
170
|
-
| 9 | Add or update screenshots when the visual output changes.
|
|
171
|
-
| 10 | Run the documentation link and schema checks.
|
|
172
|
-
|
|
173
|
-
The goal of every integration is the same: show Codex limit information quickly
|
|
157
|
+
| Step | Action |
|
|
158
|
+
| ---- | ----------------------------------------------------------------------------------------------------------------------------------- |
|
|
159
|
+
| 1 | Create `src/agents/<agent-name>` with the standard four-file adapter layout. |
|
|
160
|
+
| 2 | Define metadata, optional environment help, `install`, `uninstall`, and `inspect` in `integration.ts`. |
|
|
161
|
+
| 3 | Keep `plugin.ts` focused on the target host API and load Codex data only through the shared package core. |
|
|
162
|
+
| 4 | Register the integration descriptor once in `src/agents/index.ts`; shared lifecycle and doctor commands consume it automatically. |
|
|
163
|
+
| 5 | Add install, conservative uninstall, formatter, and host-behavior tests. Document manual validation when automation is impractical. |
|
|
164
|
+
| 6 | Add `docs/readme/agents/<agent-name>.md`. |
|
|
165
|
+
| 7 | Add the integration to [Agent Integrations](docs/readme/agent-integrations.md). |
|
|
166
|
+
| 8 | Add `src/package/<agent-name>.ts`, its host-only `./<agent-name>` subpath, and the shared package-build metadata. |
|
|
167
|
+
| 9 | Add or update screenshots when the visual output changes. |
|
|
168
|
+
| 10 | Run the documentation link and schema checks. |
|
|
169
|
+
|
|
170
|
+
The goal of every integration is the same: show Codex limit information quickly and safely without sending the request or limit data to the LLM.
|
|
174
171
|
|
|
175
172
|
## Documentation changes
|
|
176
173
|
|
|
@@ -181,7 +178,9 @@ Keep documentation changes consistent with these rules:
|
|
|
181
178
|
- use relative links for files in this repository;
|
|
182
179
|
- keep commands executable from their documented working directory;
|
|
183
180
|
- keep heading anchors stable when another file links to them;
|
|
184
|
-
-
|
|
181
|
+
- keep deep safety behavior in [`SECURITY.md`](SECURITY.md), support requirements in [Compatibility](docs/readme/compatibility.md), cross-surface diagnosis in [Troubleshooting](docs/readme/troubleshooting.md), and agent-specific setup, removal, and troubleshooting in the matching guide under [`docs/readme/agents`](docs/readme/agents);
|
|
182
|
+
- summarize and link to the canonical guide instead of copying its detailed procedures or guarantees;
|
|
183
|
+
- synchronize every external and inline JSON example with its corresponding schema under `docs/schema`; `bun run docs:schema` enforces the linked examples in `docs/readme/json-output.md`;
|
|
185
184
|
- use descriptive image alt text and sanitized screenshots;
|
|
186
185
|
- never include tokens, account IDs, cookies, authorization headers, private paths, environment contents, or raw Codex files.
|
|
187
186
|
|
|
@@ -196,11 +195,13 @@ Documentation-only changes do not require unrelated runtime changes, but the com
|
|
|
196
195
|
|
|
197
196
|
## Pull request checklist
|
|
198
197
|
|
|
199
|
-
|
|
198
|
+
Opening a Pull Request loads the repository's [Pull Request template](.github/pull_request_template.md). Complete its summary, related-issue, validation, and screenshot sections before requesting review.
|
|
199
|
+
|
|
200
|
+
Then verify:
|
|
200
201
|
|
|
201
202
|
- [ ] The PR title and description explain what changed and why.
|
|
202
203
|
- [ ] The change is focused and does not include unrelated cleanup.
|
|
203
|
-
- [ ] `bun run format` was run and `bun run check`
|
|
204
|
+
- [ ] `bun run format` was run and both `bun run audit` and `bun run check` pass locally.
|
|
204
205
|
- [ ] Tests were added or updated for behavior changes.
|
|
205
206
|
- [ ] Documentation was updated if commands, setup, output, or agent support changed.
|
|
206
207
|
- [ ] No secrets, account data, tokens, cookies, or raw local files were committed.
|
|
@@ -214,7 +215,9 @@ Please follow the private reporting process in [`SECURITY.md`](./SECURITY.md).
|
|
|
214
215
|
|
|
215
216
|
## Community guidelines
|
|
216
217
|
|
|
217
|
-
Be clear, respectful, and constructive in issues, Pull Requests, and reviews.
|
|
218
|
+
Every project interaction is governed by the [`CODE_OF_CONDUCT.md`](CODE_OF_CONDUCT.md). Be clear, respectful, and constructive in issues, Pull Requests, and reviews. Report conduct concerns through its private reporting process rather than opening a public issue.
|
|
219
|
+
|
|
220
|
+
Good contributions are focused, tested, documented, and easy to understand.
|
|
218
221
|
|
|
219
222
|
## Contact
|
|
220
223
|
|