ModLens Image Vision Bridge
liustack/modlens
Gives text-only models sight by running the modlens CLI on an image path or URL and returning structured JSON evidence with transcribed text, layout and semantics.
Use before pushing, force-pushing, marking ready for review, or claiming checks pass on a deepseek-harness branch, and immediately after gh stack sync publishes rewritten branches, to select the…
$ npx skills add Zhou-Yujing114514/deepseek-harness-linux --skill dsh-pre-push-checks -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install Zhou-Yujing114514/deepseek-harness-linux dsh-pre-push-checks --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/Zhou-Yujing114514/deepseek-harness-linux.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/dsh-pre-push-checks .claude/skills/dsh-pre-push-checks && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "dsh-pre-push-checks" agent skill from https://github.com/Zhou-Yujing114514/deepseek-harness-linux/tree/master/.agents/skills/dsh-pre-push-checks into .claude/skills/dsh-pre-push-checks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsh-pre-push-checks", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/Zhou-Yujing114514/deepseek-harness-linux/tree/master/.agents/skills/dsh-pre-push-checksType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add Zhou-Yujing114514/deepseek-harness-linux --skill dsh-pre-push-checks -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install Zhou-Yujing114514/deepseek-harness-linux dsh-pre-push-checks --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Zhou-Yujing114514/deepseek-harness-linux.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/dsh-pre-push-checks .agents/skills/dsh-pre-push-checks && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "dsh-pre-push-checks" agent skill from https://github.com/Zhou-Yujing114514/deepseek-harness-linux/tree/master/.agents/skills/dsh-pre-push-checks into .agents/skills/dsh-pre-push-checks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsh-pre-push-checks", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Zhou-Yujing114514/deepseek-harness-linux --skill dsh-pre-push-checks -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install Zhou-Yujing114514/deepseek-harness-linux dsh-pre-push-checks --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Zhou-Yujing114514/deepseek-harness-linux.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/dsh-pre-push-checks .cursor/skills/dsh-pre-push-checks && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "dsh-pre-push-checks" agent skill from https://github.com/Zhou-Yujing114514/deepseek-harness-linux/tree/master/.agents/skills/dsh-pre-push-checks into .cursor/skills/dsh-pre-push-checks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsh-pre-push-checks", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/Zhou-Yujing114514/deepseek-harness-linux.git --path .agents/skills/dsh-pre-push-checks--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add Zhou-Yujing114514/deepseek-harness-linux --skill dsh-pre-push-checks -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install Zhou-Yujing114514/deepseek-harness-linux dsh-pre-push-checks --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Zhou-Yujing114514/deepseek-harness-linux.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/dsh-pre-push-checks .gemini/skills/dsh-pre-push-checks && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "dsh-pre-push-checks" agent skill from https://github.com/Zhou-Yujing114514/deepseek-harness-linux/tree/master/.agents/skills/dsh-pre-push-checks into .gemini/skills/dsh-pre-push-checks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsh-pre-push-checks", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install Zhou-Yujing114514/deepseek-harness-linux dsh-pre-push-checksInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add Zhou-Yujing114514/deepseek-harness-linux --skill dsh-pre-push-checks -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/Zhou-Yujing114514/deepseek-harness-linux.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/dsh-pre-push-checks .github/skills/dsh-pre-push-checks && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "dsh-pre-push-checks" agent skill from https://github.com/Zhou-Yujing114514/deepseek-harness-linux/tree/master/.agents/skills/dsh-pre-push-checks into .github/skills/dsh-pre-push-checks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsh-pre-push-checks", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add Zhou-Yujing114514/deepseek-harness-linux --skill dsh-pre-push-checks -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install Zhou-Yujing114514/deepseek-harness-linux dsh-pre-push-checks --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/Zhou-Yujing114514/deepseek-harness-linux.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/dsh-pre-push-checks .opencode/skills/dsh-pre-push-checks && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "dsh-pre-push-checks" agent skill from https://github.com/Zhou-Yujing114514/deepseek-harness-linux/tree/master/.agents/skills/dsh-pre-push-checks into .opencode/skills/dsh-pre-push-checks/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "dsh-pre-push-checks", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
dsh-pre-push-checksUse before pushing, force-pushing, marking ready for review, or claiming checks pass on a deepseek-harness branch, and immediately after gh stack sync publishes rewritten branches, to select the…
Dsh Pre Push Checks is an agent skill from Zhou-Yujing114514/deepseek-harness-linux. Use before pushing, force-pushing, marking ready for review, or claiming checks pass on a deepseek-harness branch, and immediately after gh stack sync publishes rewritten branches, to select the smallest tests and checks that cover the outgoing or just-published diff without reflexively running the full repository suite.
Its SKILL.md is about 2.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It works with DeepSeek. The repository describes itself as: First-class Linux packaging for DeepSeek Harness desktop — AppImage, .deb, .tar.gz for x64/arm64, built by native CI. The licence is MIT.
2 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 35a829f. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Shell commands in SKILL.md call:
pnpmghgitvitestFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use pnpm, gh and git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Dsh Pre Push Checks loads about 2.7k tokens when it runs. Until then it costs about 86 tokens; SKILL.md has 1,401 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from Zhou-Yujing114514/deepseek-harness-linux at commit 35a829f, republished under its MIT licence (© Zhou-Yujing114514). 1,401 words, ~2,742 tokens.
.claude/skills/dsh-pre-push-checks/SKILL.md (or your agent's skills folder).Use this skill to run relevant local evidence once before a deepseek-harness push. The sole ordering exception is gh stack sync, which may publish a cascading rebase before the rewritten layers can be validated; validate them immediately afterward and do not merge until the evidence passes. Git hooks are intentionally narrow: pre-commit fixes staged lint, checks staged whitespace, and guards vendored-source metadata; pre-push runs only the incremental repository typecheck. CI owns exhaustive coverage and the platform matrix.
git status --short --branch
git rev-parse --show-toplevelpnpm --silent run change-scope --base <verified-base-ref>The command never guesses or fetches a base. Supply the ref verified from current remote or stack state; use --head <ref> when inspecting a commit other than HEAD. Its versioned JSON records committed paths relative to the resolved merge base, while staged, unstaged, and untracked paths describe the current worktree. After merging a changed base, rerun the report, reassess which behavior the combined scope can affect, and rerun only checks invalidated by the merge.
There is no universal local baseline beyond the hooks. Every behavior change needs the narrowest available test or purpose-built check that would fail for its regression; add broader checks only for surfaces the diff actually reaches.
When the outgoing change adds or changes a resource-owning or asynchronous test, fixture, helper, or CI execution path, use dsh-ci-test-reliability first to decide whether restoration, negative-control, quiescent-teardown, or concurrent-process evidence applies. This skill still selects the commands and avoids repeating evidence that already passed.
any is an explicit local fallback, not strict evidence. Run pnpm run typecheck before handing off Remote/mock changes; rebuild missing, stale, or partial generated declarations before diagnosing remaining errors. Keep the exception in the test proxy, never in production Remote types, ambient flags, or copied signatures.pnpm run doc-sync; run full lint when the documentation workflow requires it.snapshots/, with snapshot.yml naming its shipped dsh profile and composition/header pin. Canonical parent files are session[.vN].jsonl, children are session.<ordinal>[.vN].jsonl, and the harness selects the highest generation per role. ARIA, geometry, generator, CLI, and unit expectations without that Session round trip stay beside their owning test under tests/expected/; do not place them in snapshots/ or give them a *.snapshot.ts owner. Use the owning test:expected, test:web, or test lane.dsh profile belongs under apps/cli/tests/profiles/; a package-specific Loader composition belongs under that package's tests/fixtures/. User-facing optional overlays live under apps/cli/config/examples/ and pair with a guide under docs/user/.pnpm run build, the relevant hygiene checks, and the owning built-artifact smoke.pnpm run test:e2e target when credentials are available; never print secrets.Do not manually repeat a passing check merely because commit or push follows. In particular, do not run typecheck immediately before pushing solely to duplicate the pre-push hook.
Pass Vitest file and name filters directly after the script name with pnpm run; do not insert a standalone --, which reaches Vitest and can disable -t filtering. For example, this command runs one headless snapshot scenario:
pnpm run test:snapshot snapshots/session/headless.snapshot.ts -t 'cordis-inspect-jsdoc'This applies to these pnpm scripts; npm and other launchers retain their own argument-forwarding syntax. Check the reported selected test count before treating a filtered run as focused evidence.
Test selection and coverage selection are separate. A Vitest file filter chooses which tests run, while the repository configuration otherwise measures every packages/*/*/src/**/*.ts file. When unit coverage is relevant, name both the owning tests and the source files or package whose coverage those tests must prove:
pnpm exec vitest run packages/<group>/<package>/tests/<behavior>.spec.ts \
--coverage \
--coverage.include='packages/<group>/<package>/src/**/*.ts'Use an exact source file when the behavior is truly confined to one module. Repeat --coverage.include for multiple affected files or packages, and pass every owning test file needed to exercise that scope. The configured per-file 100% thresholds still apply inside the selected source scope.
When the owning tests are unclear, use Vitest's dependency graph to discover a candidate set, then inspect the selected tests before treating the run as evidence:
pnpm exec vitest related packages/<group>/<package>/src/<changed>.ts \
--run \
--coverage \
--coverage.include='packages/<group>/<package>/src/<changed>.ts'vitest related cannot discover behavior reached only through configuration, dynamic loading, subprocesses, workers, built artifacts, or external providers; select those owning tests explicitly. Do not use --passWithNoTests, lower coverage thresholds, or narrow --coverage.include merely to hide an uncovered affected file. If a selected package scope fails because one focused test does not cover it, add its other relevant owning tests or narrow the source scope only when the excluded modules cannot be affected by the change.
Run the complete local approximation only when the user explicitly requests it, while diagnosing a CI failure, or when the change spans the repository so broadly that no narrower set is credible. Use the current workflow and package scripts as the inventory; do not recreate the removed check:pre-push aggregate.
Rebase is allowed for standalone and stacked PR branches, including after review. Before a standalone history rewrite, fetch the current remote branch and record its exact OID; publish with --force-with-lease=<branch>:<observed-oid> so a concurrent update aborts the push. gh stack push and gh stack sync supply lease protection for their managed branches. Raw --force is never allowed.
After any rewritten push, fetch the live heads again and re-audit unresolved review threads, approvals, mergeability, and checks. Commit hashes and inline-comment anchors from before the rewrite are not current evidence.
gh stack sync fetches, cascade-rebases, and pushes as one operation, so it cannot place local validation between rewrite and publication. Before running it, require a clean worktree and record the official stack order and exact remote heads. After it returns:
If post-sync evidence fails, leave the lease-protected published heads in place, repair the failure, validate the repair, and publish the correction. Do not claim the sync made the stack ready merely because the command succeeded.
If a relevant check fails before an ordinary push, stop and fix or explain the blocker. Do not push and hope CI differs. For the post-sync exception, block the merge and follow the repair procedure above.
If a failure looks environment-specific, prove it:
For ordinary and standalone rebase pushes:
HEAD.git rev-parse HEAD origin/$(git branch --show-current)For GitHub PRs, inspect remote CI after the push:
gh pr checksReport pending checks as pending. Inspect failures before attributing them to the branch or the environment.
When gh pr checks reports "no checks reported" and /actions/runs?head_sha=<sha> returns total_count: 0, read mergeability before suspecting the push or a dropped GitHub event:
gh pr view <number> --json mergeable,mergeStateStatusGitHub creates no pull_request workflow runs while a PR is CONFLICTING/DIRTY, so the absent signal is the conflict, not infrastructure. Resolving the conflict is the only fix; empty commits, --allow-empty pushes, draft/ready toggles, and revert-and-restore bounces all leave total_count at zero and add junk history. Confirm the conflicting paths with git merge-tree --write-tree HEAD origin/<base> when the branch cannot be merged locally yet.
For gh stack sync, use the post-sync validation sequence instead of pretending the ordinary order was possible.
© Zhou-Yujing114514, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/dsh-pre-push-checks of Zhou-Yujing114514/deepseek-harness-linux.
Open the folder on GitHubat commit 35a829f
Dsh Pre Push Checks next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Dsh Pre Push Checks this skillZhou-Yujing114514/deepseek-harness-linux | 120 | — | ~2.7k | Automated safety check: Pass | MIT | |
| ModLens Image Vision Bridgeliustack/modlens | 4.2k | — | ~1.3k | Automated safety check: Notes | MIT | |
| Distilly Person Profile Buildertitanwings/distilly | 25k | — | ~15k | Automated safety check: Notes | MIT | |
| Evals Contextzgsm-ai/costrict | 4.5k | 1 repos | ~1.9k | Automated safety check: Pass | Apache-2.0 | |
| J SpaceTiger3807861189/J-Space-Cognition-Suite | 3k | — | ~3k | Automated safety check: Pass | Apache-2.0 | |
| Weavebench Cua ReproduceAMAP-ML/LongHorizon-Harness | 1.7k | — | ~1.6k | Automated safety check: Pass | MIT |
liustack/modlens
Gives text-only models sight by running the modlens CLI on an image path or URL and returning structured JSON evidence with transcribed text, layout and semantics.
titanwings/distilly
Distills source material about a colleague, a relationship or a celebrity into reusable Person Profiles that an agent can later work from, in English or Chinese.
zgsm-ai/costrict
Provides context about the CoStrict evals system structure in this monorepo.
Tiger3807861189/J-Space-Cognition-Suite
Operate a selective workspace for complex reasoning, long tasks, repository engineering, coordinated agents, and authorized security analysis.
AMAP-ML/LongHorizon-Harness
Reproduce CUA-Harness experiments on WeaveBench from a GitHub checkout.
Anionex/agent-vision-toolkit
Local vision CLIs: glance (describe/ask/OCR an image), ground (locate a target, pixel box), detect (element inventory), trace (image to SVG geometry), crop (cut a pixel box to a file), and…
Zhou-Yujing114514/deepseek-harness-linux
Use on Windows for unexpected DSH sandbox access denials: workspace writes or listing fail, or an ordinarily readable path cannot be read.
Zhou-Yujing114514/deepseek-harness-linux
A skill your agent uses when a deepseek-harness change breaks an externally perceptible surface (CLI, profiles, cordis.yml or settings keys, persisted user data, SDK or wire APIs, published package…
Zhou-Yujing114514/deepseek-harness-linux
A skill your agent uses when designing, reviewing, adding, enabling, disabling, installing, configuring, or debugging a plugin, bundle, feature, page, panel, tool, or MCP connection in the current…
Zhou-Yujing114514/deepseek-harness-linux
Design, review, and diagnose DeepSeek Harness tests and fixtures that can fail nondeterministically under CI concurrency, shared host resources, clocks, process-global state, subprocesses, network…
Zhou-Yujing114514/deepseek-harness-linux
Find evidence-backed simplifications in DeepSeek Harness code, APIs, configuration, tests, and prose; write or consolidate proposals, identify small inline cleanups, or assess simplifications from…
Zhou-Yujing114514/deepseek-harness-linux
Design and review DeepSeek Harness client UI changes — visual token discipline, reuse-before-adding, feedback surfaces (toast vs in-place notice vs empty state), overlay and menu safety, platform…
Works with
Use before pushing, force-pushing, marking ready for review, or claiming checks pass on a deepseek-harness branch, and immediately after gh stack sync publishes rewritten branches, to select the…. Dsh Pre Push Checks is an agent skill from Zhou-Yujing114514/deepseek-harness-linux. Use before pushing, force-pushing, marking ready for review, or claiming checks pass on a deepseek-harness branch, and immediately after gh stack sync publishes rewritten branches, to select the smallest tests and checks that cover the outgoing or just-published diff without reflexively running the full repository suite.
Run `npx skills add Zhou-Yujing114514/deepseek-harness-linux --skill dsh-pre-push-checks -a claude-code`. Or copy the skill folder (.agents/skills/dsh-pre-push-checks in Zhou-Yujing114514/deepseek-harness-linux) into .claude/skills/dsh-pre-push-checks in your project. Claude Code loads it when a task matches its description.
Run `npx skills add Zhou-Yujing114514/deepseek-harness-linux --skill dsh-pre-push-checks -a codex`. Or copy the skill folder (.agents/skills/dsh-pre-push-checks in Zhou-Yujing114514/deepseek-harness-linux) into .agents/skills/dsh-pre-push-checks in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add Zhou-Yujing114514/deepseek-harness-linux --skill dsh-pre-push-checks -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/dsh-pre-push-checks, .gemini/skills/dsh-pre-push-checks, .github/skills/dsh-pre-push-checks and .opencode/skills/dsh-pre-push-checks in your project.
Going by SKILL.md and its folder, Dsh Pre Push Checks needs the command-line tools its instructions call (pnpm, gh, git and vitest).
SKILL.md contains no URLs. Its commands use gh and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Dsh Pre Push Checks is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.7k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Dsh Pre Push Checks: ModLens Image Vision Bridge (liustack/modlens, 4.2k stars), Distilly Person Profile Builder (titanwings/distilly, 25k stars), Evals Context (zgsm-ai/costrict, 4.5k stars) and J Space (Tiger3807861189/J-Space-Cognition-Suite, 3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
Zhou-Yujing114514 (a GitHub user) maintains it in Zhou-Yujing114514/deepseek-harness-linux, which has 120 GitHub stars. The repository holds 9 skills in this directory. The repository was last updated on October 6, 2026.
Source: Zhou-Yujing114514/deepseek-harness-linux on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.