Skip to content

sigmaforcoding/signal-dense

v0.1.0MIT

Compress language, not information. Preserve reasoning, risks and useful insights with less reading.

Signal Dense

Compress language, not information. 压缩表达,不压缩认知。

给 ChatGPT / Codex 的高信息密度输出策略:减少阅读负担,保留结论、关键原因、 风险、不确定性,以及你可能没想到但有价值的洞见。默认简洁;说“为什么 / 没懂 / 展开”就正常解释。

An instruction-only plugin and skill for lower reading cost without sacrificing reasoning, trade-offs or useful adjacent insights. No runtime, API key, telemetry, MCP server or dependency on the inspiration projects is required.

Why not just “be concise”?

A length target rewards omission. Signal Dense instead asks whether deleting a point would change the reader's conclusion, action, understanding of why, risk judgment or awareness of an important option. If it would, the point stays.

Priority: correctness > decision-relevant information > novel useful insight > clarity > brevity. Shorter is useful only when the answer remains informative and readable. This is a behavioral preference, not a guarantee of factual accuracy or a deterministic compression algorithm.

Start here / 快速使用

WhereWhat to use
ChatGPT, everyday repliesCopy Custom Instructions into your custom instructions.
Codex, everyday repliesMerge AGENTS.md rules into your global instruction file.
Codex, explicit or automatic skill selectionInstall the skill folder below.
Plugin-capable hostUse the optional packaged plugin below.

The two adapters have the same core policy. Choose the one for your host; adding the full skill is optional. We ship copyable rules and do not modify your settings when you clone this repository.

ChatGPT

Open Settings → Personalization → Custom Instructions (labels may vary by client). Paste the contents of chatgpt-instructions.md alongside existing preferences, replacing contradictory brevity rules rather than stacking them. The file is under 1,500 characters. Start a fresh chat and try:

回答时压缩表达,不压缩认知。比较这两个方案,保留风险和我可能漏掉的点。

Say “详细讲”, “为什么”, “没懂”, “展开” or “具体一点” for more explanation. For a one-off trial, paste the same rules at the start of a chat. To remove the persistent preference, remove that block from Custom Instructions.

A GitHub repository is not automatically a ChatGPT plugin-directory listing. This project has not been submitted to or approved for the public directory. On a desktop surface with local marketplace support, use the plugin route below; on other surfaces, use Custom Instructions. Do not enter this repository URL as an MCP endpoint: this package contains no MCP server.

Codex always-on core

Merge codex-AGENTS.md into ~/.codex/AGENTS.md. If CODEX_HOME is customized, use $CODEX_HOME/AGENTS.md. Preserve existing project, security and workflow instructions; do not replace the whole file blindly.

Global instructions are loaded when Codex starts a session. An AGENTS.override.md in the same scope can take precedence; repository instructions and higher-priority host instructions can also affect behavior. Start a new chat after editing and ask Codex which instruction files it loaded if the preference seems absent. To uninstall the core, remove only the Signal Dense section.

Codex standalone skill

Clone this repository into a location you keep, then link its skill folder:

git clone https://github.com/sigmaforcoding/signal-dense.git
cd signal-dense
mkdir -p "$HOME/.agents/skills"
ln -s "$PWD/skills/signal-dense" "$HOME/.agents/skills/signal-dense"

The link command refuses to replace an existing path. If one exists, inspect it before choosing to update it. On Windows, copy skills/signal-dense into %USERPROFILE%\.agents\skills\signal-dense instead. Start a fresh Codex chat.

Invoke $signal-dense or choose Signal Dense in the skill selector; plugin installations may show a namespaced name. Example:

Use $signal-dense to compare these plans. Keep the trade-offs and hidden dependencies.

Automatic selection is allowed, but not guaranteed for every turn. The always-on adapter supplies the default preference. To disable the standalone skill, remove the symlink or copied signal-dense folder; keep your repository if desired. Do not install both the standalone skill and plugin unless you want duplicate selectors.

Optional plugin installation

The root plugin.json is the portable entry point; .codex-plugin/plugin.json supplies the compatibility overlay. Keep skills/ at the package root.

On Codex versions exposing codex plugin:

codex plugin marketplace add sigmaforcoding/signal-dense
codex plugin add signal-dense@signal-dense

The repository marketplace points to the root plugin in this same public GitHub repository. Check codex plugin list and start a new chat. If the command is not available in your version, use the standalone skill route.

For updates, inspect changes, then use codex plugin marketplace upgrade signal-dense and reinstall with codex plugin add signal-dense@signal-dense. Use codex plugin remove signal-dense@signal-dense to remove the plugin and codex plugin marketplace remove signal-dense to remove its marketplace.

Plugin caches and copied adapters are snapshots: editing upstream SKILL.md does not silently update an installed copy or your Custom Instructions. Pull or update the package and manually refresh copied adapters. The symlink route follows the local checkout after you update it.

Architecture

plugin.json                         portable identity
.codex-plugin/plugin.json           Codex compatibility metadata
.agents/plugins/marketplace.json    optional Git-backed installation source
skills/signal-dense/
  SKILL.md                          canonical behavior
  agents/openai.yaml                optional UI metadata; implicit selection allowed
  references/output-policy.md       conditional application guidance
  references/examples.md            authored examples
adapters/
  codex-AGENTS.md                    minimal always-on projection
  chatgpt-instructions.md            same core for ChatGPT
evals/cases.md                      semantic checks and scoring protocol

Progressive disclosure: hosts discover the short name/description first, load SKILL.md when selected, and load references only when a difficult rewrite needs them. The always-on core stays short. It is a maintained projection, not a second behavior specification; changes begin in SKILL.md and then update both adapters.

Before / after

Before: “There are a few things worth mentioning about the launch. Friday is likely, but security needs to approve by Thursday 15:00 UTC. Otherwise it will be Monday. Maya is the owner. Payment retries may double-charge because idempotency keys are missing. In summary, there are dependencies and a risk to address.”

After: “Release is likely Friday if security approves by Thursday 15:00 UTC; otherwise Monday. Maya owns it. Missing idempotency keys may cause payment retries to double-charge.”

Both retain the conditional date, timezone, owner and causal risk. The second removes packaging, not information. These are authored examples, not benchmark results. See more examples, including Chinese explanations, overlooked dependencies and seven essential conditions.

Design choices

  • Natural language over telegraphic prose: decoding costs are reading costs too.
  • Useful adjacent insights stay; speculative tangents and compulsory “bonus tips” do not.
  • No fixed five-item limit, word quota or mandatory closing action.
  • Detail adapts to the task: facts can be one line; decisions keep trade-offs; debugging keeps exact errors and commands; ambiguity gets enough explanation.
  • Two compact paragraphs can beat many headings, but a table or checklist wins when it makes real comparisons or sequences easier to use.
  • Requested JSON, lessons, creative work and formal documents retain their format. Meaningful warmth stays in sensitive conversations.
  • Compression never replaces necessary research, verification or required updates.

Inspiration / Prior Art

This is an independently worded synthesis, not an official fork or endorsement. No upstream runtime, examples, logos or full prompt files are bundled. Licenses and source versions were checked on 2026-09-29.

SourceDesign influenceDeliberately different here
i-have-adhd by Ayoub GhrissPut actionable substance early; remove ceremonial text; make errors concrete.No blanket tangent suppression, default five-item grouping target, per-turn state restatement or mandatory two-minute next action. Its current rules do include completeness exceptions; this is a different default, not a claim that it always discards information.
Caveman by Julius BrusseeCompress wording and restore clarity when terse output becomes ambiguous.No telegraphic full/ultra register or command vocabulary for compression levels; preserve ordinary grammar and meaningful uncertainty.
Community “Laconic Mode” discussion by u/BeerbrewingTreat rigor and material caveats as constraints on brevity.Explicitly retain useful novel insights and teach normally when the user requests explanation.

i-have-adhd's LICENSE is MIT. Caveman uses a split license: its licensing map classifies skills/ as MIT and engine-linked components as BSL-1.1. Signal Dense uses no engine code. No explicit reusable software license was identified for the Reddit post; we link and describe the idea without reproducing its prompt.

Our original files use MIT. THIRD_PARTY_NOTICES.md records the reviewed versions and preserves MIT notices for the design influences. Those notices do not relicense BSL components or the Reddit author's text. If you later import source material, check the exact file's license and retain its required copyright, permission and other notices. Attribution alone is not permission to copy. We make no inherited star-count, compression-percentage or quality claims.

Evaluation and contributions

Use evals/cases.md before changing policy. Score information, reading length, redundancy, useful insight, risk retention and unnecessary explanation separately. Losing a critical condition fails even when length improves. Read the initial smoke-test report for what was actually exercised and its limits.

Contributions should include the realistic prompt, observed failure, proposed change and before/after outputs. Start with SKILL.md; update the references and both adapters if needed. Keep scope small and retain natural language. Run python3 scripts/validate.py and the relevant behavioral cases; do not introduce a global rule to solve one anecdote. By submitting a contribution, you license it under MIT.

Platform references

Packaging and installation were checked against the official plugin documentation, local skill discovery, and AGENTS.md instruction loading. Availability varies by client and workspace policy. agents/openai.yaml is optional UI metadata, not a requirement for the portable skill itself.