Proposal: add a pointer to chsrc-skill (Agent Skill) in the README
Nobody has claimed this yet.
Assessment
- Difficulty
- 1/5
- Estimated time
- Under an hour
- Newbie friendliness
- 22/100
- Issue type
- Documentation
- Clarity
- Mostly clear
- Activity status
- Active
- Tech stack
- c, debian
- Domain
- documentation
Research direction
This is a proposal to add a one-line pointer to a third-party Agent Skill, so the first step is the maintainer's decision, not an edit. Look at the README and the doc/ directory to see where third-party tooling is currently listed. Done means the maintainer has explicitly chosen the README or doc/ location, or declined. The apt dry-run bypass is a separate issue, #396, and is out of scope here.
Written by the indexing model from the issue text.
Description
Summary
I built chsrc-skill, an Agent Skill that teaches an LLM how to use chsrc correctly, and I'd like to propose including a pointer to it in the README.
Repository: https://github.com/Swcmb/chsrc-skill
What it is
SKILL.md plus 10 reference documents, all fact-checked against the chsrc v0.2.7.2 source. It contains no chsrc source code.
The premise: using chsrc correctly requires knowing details that are easy for a model to get wrong.
Behaviors that are easy to get wrong
Measured while building this (35 scenarios, 135 assertions):
| Behavior | What happens if you do not know it |
|---|---|
| CLI options must precede the dish name | chsrc get pip -no-color → "暂不支持的换源菜品", exit code 2 |
-scope accepts both -scope=system and -scope system |
the = form silently fails on some shells |
-local is deprecated |
prints a deprecation warning; use -scope=project |
71 dishes, grouped pl_ / os_ / wr_; combo dishes operate per sub-dish |
py_group looks like a single target |
chsrc ls lists mirror sites, chsrc list <dish> lists one dish |
they read as interchangeable |
| Old chsrc versions print the config instead of writing it | the correct first move is to upgrade chsrc, not to hand-edit |
On Windows the home directory is USERPROFILE, not HOME |
setting HOME as isolation has no effect |
With no -scope, the dish decides |
-scope=user on an apt dish is rejected with exit code 4 |
Evaluation
Two configurations, same 35 prompts:
| Configuration | Assertions passed |
|---|---|
| With the skill | 135/135 (100%) |
| Without the skill | 108/134 (80.6%) |
The prompt set covers trigger positives and negatives, six platform-detection scenarios, the bootstrap deadlock, scope safety, container boundaries, and rollback.
A finding along the way
Building this surfaced a dry-run bypass in the apt recipe, already reported separately: #396.
ensure_debian_or_ubuntu_old_sourcelist() writes /etc/apt/sources.list with a raw fopen, bypassing the in_dry_run_mode() guard in chsrc_overwrite_file(). On a Debian-family system without that file, chsrc set -dry debian writes to disk. The sibling DEB822 branch goes through chsrc_run() and honors -dry; only the legacy path does not.
Proposal
A one-line addition to the README pointing at the skill, for anyone driving chsrc through an LLM. I am happy to adjust the wording, the location, or the format.
If you would prefer not to list third-party tooling in the README, an alternative would be a line in doc/ instead. Either way I would rather have your explicit call than assume.
Note on scope
This repository contains only the Skill. It does not track your releases, does not vendor your source, and carries no code from the project.
- Dominant language
- C
- Stars
- 6.9k
- Forks
- 285
- PR merge metrics
- No merged PRs in 30d
Getting set up
This project ships no dev container, Dockerfile or contributing guide, so setting up is up to you: start from its README, and see our first-contribution guide for the general steps.
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from RubyMetric/chsrc
-
Difficulty 2/5 1-3 hours Newbie friendliness 82/100
RubyMetric/chsrc#396 ·
-
[arch] 多次 chsrc set arch 后 mirrorlist 累积旧 Server 行,upstream 官方源地址无效May be free again @yayoinoyume claimed this 33 days ago, and no pull request is open. OpenLinux os_dish 源
RubyMetric/chsrc#393 · 2 comments · 2 reactions · 1 assignee ·
-
`ls` 命令呈现 "可用源" 的界面有改进空间May be free again @ccmywish claimed this 35 days ago, and no pull request is open. Open改善加强
RubyMetric/chsrc#389 · 6 comments · 1 assignee ·
-
对 `Omarchy`(基于 Arch Linux 的发行版)的支持May be free again @yayoinoyume claimed this 35 days ago, and no pull request is open. OpenLinux os_dish
RubyMetric/chsrc#387 · 8 comments · 1 reaction · 1 assignee ·
-
Difficulty 3/5 1-2 days Newbie friendliness 48/100
RubyMetric/chsrc#386 · 6 comments ·
All issues in RubyMetric/chsrc
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
UNIVERSE-HPC/course-material#283 ·
-
bug C/C++ code
Difficulty 1/5 Under an hour Newbie friendliness 78/100
webarkit/WebARKitLib#85 ·
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
Maintainers usually reply within 1 day
-
Difficulty 1/5 Under an hour Newbie friendliness 72/100