@bincat/cli 0.1.0-beta.1
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/LICENSE +22 -0
- package/README.md +18 -0
- package/THIRD_PARTY_NOTICES.md +27 -0
- package/builtin-skills/init/SKILL.md +47 -0
- package/builtin-skills/review/SKILL.md +44 -0
- package/builtin-skills/simplify/SKILL.md +44 -0
- package/dist/bin.js +73527 -0
- package/dist/subprocess-runner.js +1138 -0
- package/dist/windows-acl-runner.js +1525 -0
- package/dist/worker.cjs +11110 -0
- package/package.json +60 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 bincat contributors
|
|
4
|
+
Copyright (c) 2026 DeepSeek
|
|
5
|
+
|
|
6
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
7
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
8
|
+
in the Software without restriction, including without limitation the rights
|
|
9
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
10
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
11
|
+
furnished to do so, subject to the following conditions:
|
|
12
|
+
|
|
13
|
+
The above copyright notice and this permission notice shall be included in all
|
|
14
|
+
copies or substantial portions of the Software.
|
|
15
|
+
|
|
16
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
17
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
18
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
19
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
20
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
21
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
22
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# bincat
|
|
2
|
+
|
|
3
|
+
An open-source, TUI-first coding-agent harness, tuned for DeepSeek models.
|
|
4
|
+
|
|
5
|
+
## Install
|
|
6
|
+
|
|
7
|
+
```sh
|
|
8
|
+
npm i -g @bincat/cli@beta
|
|
9
|
+
bincat
|
|
10
|
+
```
|
|
11
|
+
|
|
12
|
+
The first interactive run asks for your DeepSeek API key. To check the local installation and configuration at any time, run:
|
|
13
|
+
|
|
14
|
+
```sh
|
|
15
|
+
bincat doctor
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
License: MIT (see [`LICENSE`](LICENSE) and [`THIRD_PARTY_NOTICES.md`](THIRD_PARTY_NOTICES.md)).
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Third-party notices
|
|
2
|
+
|
|
3
|
+
bincat is derived from and inspired by several projects. This file records every
|
|
4
|
+
source whose **code** is included (in original or modified form). Projects used
|
|
5
|
+
only as a design reference are listed separately and contribute no code.
|
|
6
|
+
|
|
7
|
+
## Code included
|
|
8
|
+
|
|
9
|
+
| Source | License | What | Where in bincat |
|
|
10
|
+
|---|---|---|---|
|
|
11
|
+
| [deepseek-ai/deepseek-harness](https://github.com/deepseek-ai/deepseek-harness) (via fork `l1nxuan-du/deepseek-harness` @ `b760c13cc1`) | MIT, © 2026 DeepSeek | Base codebase: agent loop, tools, LLM adapters, sandbox, session, Cordis vendoring | throughout `packages/`, `vendor/`, `native/` |
|
|
12
|
+
| [cordiverse/cordis](https://github.com/cordiverse/cordis), cosmokit, schemastery (vendored through DSH; manifest in `vendor/README.md`) | MIT, © 2021-present Shigma | DI / plugin kernel and foundation libs | `vendor/` |
|
|
13
|
+
|
|
14
|
+
Rows are added whenever code is ported. For Apache-2.0 sources (e.g.
|
|
15
|
+
[openai/codex](https://github.com/openai/codex), [anthropics/sandbox-runtime](https://github.com/anthropics/sandbox-runtime),
|
|
16
|
+
[anthropics/claude-plugins-official](https://github.com/anthropics/claude-plugins-official)) the ported file must also keep
|
|
17
|
+
a header comment naming the origin file, and the upstream NOTICE text is reproduced below.
|
|
18
|
+
|
|
19
|
+
## Design references only (no code, no prompt text)
|
|
20
|
+
|
|
21
|
+
- Claude Code (proprietary). The reconstructed sourcemap is read for architecture
|
|
22
|
+
only. Never copy its code, system prompts or tool descriptions.
|
|
23
|
+
- OpenAI Codex CLI, when used for design only.
|
|
24
|
+
|
|
25
|
+
## Upstream NOTICE texts
|
|
26
|
+
|
|
27
|
+
_(none yet)_
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: init
|
|
3
|
+
description: Create or improve a project AGENTS.md so future agent sessions begin with durable, project-specific guidance. Use when setting up a repository or refreshing its contributor instructions.
|
|
4
|
+
argument-hint: "[extra instructions]"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
You are responsible for producing a concise `AGENTS.md` at the project root. Treat it
|
|
8
|
+
as durable onboarding for future coding-agent sessions, not as a README replacement.
|
|
9
|
+
If `$ARGUMENTS` contains extra scope or preferences, honor them.
|
|
10
|
+
|
|
11
|
+
Begin by surveying the repository. Read the root and nested package manifests, lockfiles,
|
|
12
|
+
workspace configuration, CI configuration, and release scripts. Identify the exact
|
|
13
|
+
commands for building, testing, linting, type-checking, and running one focused test.
|
|
14
|
+
Verify command names from scripts instead of guessing.
|
|
15
|
+
|
|
16
|
+
Map the top-level layout in only enough detail to explain where major responsibilities
|
|
17
|
+
live. Note package boundaries, generated directories, runtime entry points, and
|
|
18
|
+
important data or migration locations when they are not obvious from filenames.
|
|
19
|
+
|
|
20
|
+
Look for existing instruction sources before drafting: `AGENTS.md`, `CLAUDE.md`,
|
|
21
|
+
`.cursorrules`, `.github/copilot-instructions.md`, README files, contributor guides,
|
|
22
|
+
and relevant nested documentation. Extract reusable project facts from them. Do not
|
|
23
|
+
silently discard user-authored guidance, especially workflow rules or environment
|
|
24
|
+
requirements.
|
|
25
|
+
|
|
26
|
+
Write the essentials: exact commands; the relationship between major modules; the
|
|
27
|
+
supported runtimes and package manager; required local services; and non-obvious
|
|
28
|
+
conventions, such as generated files, import rules, fixture policy, or commit rules.
|
|
29
|
+
Prefer direct, testable statements over broad principles.
|
|
30
|
+
|
|
31
|
+
Leave out generic engineering advice, exhaustive file-by-file inventories, copied API
|
|
32
|
+
documentation, and facts that can be derived cheaply from the code. Omit secrets,
|
|
33
|
+
personal paths, and instructions that apply only to the current task. If a rule is
|
|
34
|
+
enforced by tooling, point to the command that enforces it.
|
|
35
|
+
|
|
36
|
+
If `AGENTS.md` already exists, preserve its structure and voice where practical.
|
|
37
|
+
Suggest focused edits rather than replacing the whole file. Keep useful sections,
|
|
38
|
+
repair stale commands, remove duplication, and fold in facts from the other instruction
|
|
39
|
+
files only when they still apply.
|
|
40
|
+
|
|
41
|
+
Check every command and path you include. When a command cannot be run safely, say how
|
|
42
|
+
it was verified from configuration instead. Avoid claims about behavior you did not
|
|
43
|
+
inspect.
|
|
44
|
+
|
|
45
|
+
Finish by showing a summary of what you changed, including any assumptions and any
|
|
46
|
+
sections you intentionally left untouched. The final `AGENTS.md` should be short enough
|
|
47
|
+
for future sessions to read completely.
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: review
|
|
3
|
+
description: Review a code change for correctness, security, regressions, and missing tests, reporting only actionable findings. Use when the user asks for a code review and does not want files edited.
|
|
4
|
+
argument-hint: "[ref range, branch, or paths]"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Review the requested change without modifying files. `$ARGUMENTS` may contain a Git ref
|
|
8
|
+
range, a branch name, a pull-request branch, a commit, or a set of paths. When it names
|
|
9
|
+
a range or branch, inspect that range against its appropriate base. When it names paths,
|
|
10
|
+
review the relevant working-tree changes in those paths.
|
|
11
|
+
|
|
12
|
+
If `$ARGUMENTS` is empty, review the uncommitted working tree and staged changes against
|
|
13
|
+
`HEAD` using `git diff HEAD`. State clearly near the start what revision, range, or files
|
|
14
|
+
you reviewed so the scope is unambiguous.
|
|
15
|
+
|
|
16
|
+
Read the surrounding implementation before judging a hunk. Inspect callers, callees,
|
|
17
|
+
types, invariants, tests, configuration, and error paths that the diff depends on. A
|
|
18
|
+
change can look correct in isolation and still break a contract elsewhere.
|
|
19
|
+
|
|
20
|
+
Apply project guidance such as `AGENTS.md` while reviewing. Respect repository-specific
|
|
21
|
+
rules for generated files, compatibility, dependency boundaries, testing, and API design.
|
|
22
|
+
|
|
23
|
+
Focus on defects introduced or exposed by the change:
|
|
24
|
+
|
|
25
|
+
- correctness bugs and violated invariants;
|
|
26
|
+
- unhandled edge cases, empty states, races, and partial failures;
|
|
27
|
+
- error handling, cleanup, retries, and resource ownership;
|
|
28
|
+
- security, trust-boundary, injection, path, permission, and secret-handling issues;
|
|
29
|
+
- compatibility regressions across supported runtimes or platforms;
|
|
30
|
+
- missing tests for newly reachable behavior and important failure modes.
|
|
31
|
+
|
|
32
|
+
Also notice performance or maintainability risks when they have a concrete failure mode,
|
|
33
|
+
not when they are merely preferences.
|
|
34
|
+
|
|
35
|
+
Report only findings you can point to. For each finding, give a `file:line` reference,
|
|
36
|
+
a severity of high, medium, or low, what goes wrong, and a focused suggested fix. Explain
|
|
37
|
+
the triggering scenario when it is not obvious. Order findings from highest severity to
|
|
38
|
+
lowest.
|
|
39
|
+
|
|
40
|
+
Do not report style nits unless the project's rules require the style. Do not invent
|
|
41
|
+
issues, and do not dilute the report with praise. If you find no actionable problems,
|
|
42
|
+
say plainly that no findings were found and identify any areas you could not verify.
|
|
43
|
+
|
|
44
|
+
Do not edit, format, commit, or stage files. This skill produces a review report only.
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: simplify
|
|
3
|
+
description: Simplify recently changed code by removing duplication, dead paths, and needless indirection while preserving behavior. Use after an implementation works and the user wants a focused cleanup.
|
|
4
|
+
argument-hint: "[paths]"
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
Simplify the code identified by `$ARGUMENTS`. When arguments name files or directories,
|
|
8
|
+
limit your work to those paths. When arguments are empty, inspect the files changed in
|
|
9
|
+
the working tree, including staged and unstaged edits, and choose the smallest coherent
|
|
10
|
+
set to improve.
|
|
11
|
+
|
|
12
|
+
Start by understanding the behavior that must remain unchanged. Read nearby callers,
|
|
13
|
+
tests, types, and project guidance. Run the relevant tests before editing when they are
|
|
14
|
+
available and reasonably fast.
|
|
15
|
+
|
|
16
|
+
Look for concrete simplification opportunities:
|
|
17
|
+
|
|
18
|
+
- duplicated logic that should use one implementation;
|
|
19
|
+
- dead code, unreachable branches, and unused exports introduced by the change;
|
|
20
|
+
- wrappers or abstractions that add no useful boundary;
|
|
21
|
+
- helpers that already exist elsewhere in the codebase;
|
|
22
|
+
- conditionals that can be reduced or made exhaustive;
|
|
23
|
+
- temporary scaffolding that should disappear now that the implementation is complete.
|
|
24
|
+
|
|
25
|
+
Do not chase stylistic preferences or rewrite stable code merely because a different
|
|
26
|
+
design is possible. Keep the scope close to the requested change.
|
|
27
|
+
|
|
28
|
+
Make only changes that are clearly better. Preserve public behavior, error semantics,
|
|
29
|
+
side-effect ordering, and compatibility unless the user explicitly asked otherwise.
|
|
30
|
+
Prefer a small direct edit over a broad refactor, and reuse the codebase's existing
|
|
31
|
+
helpers and conventions.
|
|
32
|
+
|
|
33
|
+
Keep the local style intact. Avoid introducing a new abstraction for a single caller,
|
|
34
|
+
and avoid deleting comments that explain non-obvious constraints. If a simplification
|
|
35
|
+
would require changing an interface or moving responsibility across modules, leave it
|
|
36
|
+
alone unless the benefit is certain and the blast radius is small.
|
|
37
|
+
|
|
38
|
+
After editing, run the cheapest relevant verification: focused tests first, then the
|
|
39
|
+
project type checker or broader test command when practical. If a check cannot run,
|
|
40
|
+
explain why and identify the residual risk.
|
|
41
|
+
|
|
42
|
+
Finish by summarizing what you changed, which checks you ran, and what you deliberately
|
|
43
|
+
left alone. If no safe simplification was available, say so rather than manufacturing a
|
|
44
|
+
change.
|