Skip to content
dsh.fish
Bundle

dsh-plugin-workspace-rules

Load Cursor, Gemini CLI, and GitHub Copilot workspace instructions into DeepSeek Harness.

Source
youjiaqi421
License
MIT
Updated
Updated 3 days ago

Readme

# dsh-plugin-workspace-rules

English | [中文](README.zh.md)

Load existing workspace instructions from Cursor, Gemini CLI, and GitHub Copilot into [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness).

The plugin reads these files from the workspace root, in order:

1. `.cursorrules`
2. `GEMINI.md`
3. `.github/copilot-instructions.md`

Missing and empty files are ignored. Existing files are joined into one ordered system-prompt section and re-read before each model request, so edits apply without restarting Harness. Literal `{{...}}` text is preserved and is not interpreted as a Harness prompt variable.

## Install from GitHub

Until an npm release is available, install the repository into a Harness profile:

```sh
dsh plugin --profile web add github:youjiaqi421/dsh-plugin-workspace-rules
```

pnpm 10 and newer block git dependency build scripts by default. If installation asks you to approve the package build, add the exact package key it reports to the profile's `pnpm-workspace.yaml`:

```yaml
allowBuilds:
  dsh-plugin-workspace-rules: true
```

Then repeat the install command. Allowing the build runs this repository's `prepare` script on your machine; review and pin the source commit when using it in a trusted setup.

## Configure

The installed bundle works with no configuration. To override it, edit the profile's `cordis.patch.yml`:

```yaml
- id: workspace-rules
  config:
    root: .
    files:
      - .cursorrules
      - GEMINI.md
      - .github/copilot-instructions.md
      - docs/agent-rules.md
    maxFileBytes: 65536
    maxTotalBytes: 131072
    order: 20
```

`root` is resolved from the directory where `dsh` starts. Every file path must be relative and remain inside that root. Duplicate paths, directories, invalid UTF-8, unreadable files, and size-limit violations fail loudly so the agent never runs with silently incomplete instructions.

## Behavior

- File order is configuration order.
- Missing files and whitespace-only files contribute nothing.
- Files are decoded as strict UTF-8; a leading byte-order mark is removed.
- `maxFileBytes` limits each source file.
- `maxTotalBytes` limits the complete rendered Markdown, including headings.
- The prompt section defaults to order `20`, after the deployment persona and before tool guidance.
- Rule text is included in the request's recorded system prompt, preserving Harness replay behavior.

## Develop

Requires Node.js `^22.19.0 || >=24` and pnpm.

```sh
pnpm install
pnpm run check
```

Install the checkout into a local profile from this directory:

```sh
dsh plugin --profile web add .
```

## License

[MIT](LICENSE)

Install

dsh plugin --profile web add github:youjiaqi421/dsh-plugin-workspace-rules

Profile: web

  • This package builds from source on install. pnpm will ask you to allow its build script — that is permission to run the package’s code on your machine, outside the agent sandbox. Only allow sources you trust.
  • This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.
Source