home / skills / dcjanus / prompts / dcjanus-preferences

dcjanus-preferences skill

/skills/dcjanus-preferences

This skill helps you apply DCjanus preferences to select libraries and usage scenarios across Python, Rust, and Go.

npx playbooks add skill dcjanus/prompts --skill dcjanus-preferences

Review the files below or copy the command above to add this skill to your agents.

Files (4)
SKILL.md
702 B
---
name: dcjanus-preferences
description: 记录 DCjanus 在不同语言中偏好的第三方库与使用场景,供 AI 在选型、引入依赖或替换库时优先参考。适用于 Python/Rust/Go 的库选择、技术方案对比、或需要遵循 DCjanus 个人偏好进行开发的场景。
---

## Usage

- 先确认语言,再读取对应参考文件。
- 引入或替换第三方库时优先使用偏好清单。
- 语言未覆盖或需求冲突时先向用户确认,再补充到对应语言文件。
- 新增语言时创建 `references/<language>.md` 并在此补充条目。

## Language References

- Python: `references/python.md`
- Rust: `references/rust.md`
- Go: `references/go.md`

Overview

This skill documents DCjanus's preferred third-party libraries and typical usage scenarios across Python, Rust, and Go. It serves as a single reference for dependency selection, replacement, and tooling choices when developing to DCjanus's preferences. The skill is meant to be consulted before proposing or adding libraries so choices align with those preferences.

How this skill works

The skill first confirms the target programming language, then reads the corresponding reference file for that language to obtain ranked preferences and recommended use cases. When proposing to add or replace a dependency, it prioritizes items on the preference list and flags conflicts or gaps. If a language is not covered or there is an unresolved conflict, the skill prompts the user and updates the language reference file with any confirmed additions.

When to use it

  • Choosing a third-party library for a new feature in Python, Rust, or Go.
  • Replacing an existing dependency and wanting to respect DCjanus's preferences.
  • Performing a technical comparison and needing a preferred shortlist to evaluate.
  • Onboarding or enforcing a consistent set of libraries across a project that follows DCjanus's tastes.
  • Adding support for a new language or filling missing guidance in the references.

Best practices

  • Always confirm the target language before consulting the preference list.
  • Default to items listed in the language reference unless a clear technical reason favors otherwise.
  • Prompt the user when the language is not covered or the preference list conflicts with requirements.
  • Record any confirmed additions or changes to the appropriate language reference file.
  • Prefer minimal, well-maintained libraries that match the documented use cases.

Example use cases

  • Selecting a HTTP client library for a Python microservice while aligning with DCjanus's preferences.
  • Comparing serialization crates in Rust and choosing the preferred option from the reference file.
  • Swapping a Go logging library to the one listed as preferred to maintain consistency across projects.
  • Adding a new language reference when the team starts using a language not yet documented.

FAQ

What languages are covered by the references?

Python, Rust, and Go are covered; each has a dedicated reference file.

What if my requirement conflicts with a preferred library?

Flag the conflict, explain the technical trade-offs to the user, and proceed only after confirmation. Update the reference if the change is accepted.