Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 20 additions & 0 deletions .agents/plugins/marketplace.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
{
"name": "laconian",
"interface": {
"displayName": "Laconian"
},
"plugins": [
{
"name": "laconian",
"source": {
"source": "local",
"path": "./"
},
"policy": {
"installation": "AVAILABLE",
"authentication": "ON_INSTALL"
},
"category": "Productivity"
}
]
}
28 changes: 28 additions & 0 deletions .codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{
"name": "laconian",
"version": "0.1.0-alpha.1",
"description": "Produce the shortest complete answer while preserving correctness and required information.",
"author": {
"name": "Laconian contributors",
"url": "https://github.com/agent-axiom"
},
"homepage": "https://github.com/agent-axiom/laconian",
"repository": "https://github.com/agent-axiom/laconian",
"license": "Apache-2.0",
"keywords": ["concise", "brevity", "writing", "editing", "agent-skill"],
"skills": "./skills/",
"interface": {
"displayName": "Laconian",
"shortDescription": "Shortest complete answers without lost substance",
"longDescription": "Use the if workflow to remove filler, restatement, repetition, and decoration while preserving correctness, safety, required detail, exact values, and material uncertainty.",
"developerName": "Laconian contributors",
"category": "Productivity",
"capabilities": ["Interactive"],
"websiteURL": "https://github.com/agent-axiom/laconian",
"defaultPrompt": [
"$laconian:if Answer this as briefly as possible without losing required detail.",
"$laconian:if Shorten this draft while preserving every material fact and warning.",
"$laconian:if Remove filler and repetition from this answer."
]
}
}
17 changes: 17 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,9 @@ permissions:
jobs:
quality:
runs-on: ubuntu-latest
env:
UV_PYTHON: ${{ matrix.python-version }}
UV_PYTHON_DOWNLOADS: never
strategy:
fail-fast: false
matrix:
Expand All @@ -26,13 +29,22 @@ jobs:
enable-cache: true
cache-dependency-glob: uv.lock
- run: uv sync --all-extras --locked
- name: Verify Python selection
run: >-
uv run python -c 'import os, sys; expected = tuple(map(int,
os.environ["UV_PYTHON"].split("."))); assert sys.version_info[:2] == expected,
(sys.version, expected)'
- run: uv run ruff format --check .
- run: uv run ruff check .
- run: uv run mypy src
- run: uv run pytest tests/test_skill_contract.py tests/test_plugin_contract.py -q
- run: uv run pytest -q

macos-capsule:
runs-on: macos-latest
env:
UV_PYTHON: "3.14"
UV_PYTHON_DOWNLOADS: never
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
Expand All @@ -44,4 +56,9 @@ jobs:
enable-cache: true
cache-dependency-glob: uv.lock
- run: uv sync --all-extras --locked
- name: Verify Python selection
run: >-
uv run python -c 'import os, sys; expected = tuple(map(int,
os.environ["UV_PYTHON"].split("."))); assert sys.version_info[:2] == expected,
(sys.version, expected)'
- run: uv run pytest tests/capsule/test_posix.py tests/capsule/test_filesystem.py tests/capsule/test_prepare.py tests/capsule/test_verify_prepared.py tests/capsule/test_cli_plan.py tests/test_cli.py -q
35 changes: 35 additions & 0 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Release

on:
push:
tags: ["v0.1.0-alpha.1"]

permissions:
contents: read

jobs:
release:
runs-on: ubuntu-latest
permissions:
contents: write
steps:
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
- uses: actions/setup-python@5fda3b95a4ea91299a34e894583c3862153e4b97 # v7.0.0
with:
python-version: "3.11"
- name: Build deterministic plugin assets
run: python tools/build_plugin_release.py --output-dir dist
- name: Verify checksum
working-directory: dist
run: sha256sum -c "laconian-plugin-${GITHUB_REF_NAME}.zip.sha256"
- name: Publish GitHub prerelease
env:
GH_TOKEN: ${{ github.token }}
run: |
gh release create "$GITHUB_REF_NAME" \
"dist/laconian-plugin-${GITHUB_REF_NAME}.zip" \
"dist/laconian-plugin-${GITHUB_REF_NAME}.zip.sha256" \
--verify-tag \
--prerelease \
--title "Laconian ${GITHUB_REF_NAME}" \
--notes-file docs/releases/v0.1.0-alpha.1.md
7 changes: 4 additions & 3 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,10 +1,11 @@
# Changelog

All notable project changes will be recorded here. The project is pre-release; this file does not
assign a release date to work still under review.
All notable project changes will be recorded here.

## [Unreleased]

## [0.1.0-alpha.1] - 2026-08-30

### Added

- A one-file, Markdown-only `if` skill for the shortest complete answer.
Expand All @@ -23,4 +24,4 @@ assign a release date to work still under review.
benchmark materials, and the MIT Caveman fixture.
- Public philosophy, methodology, case-contribution, contributor, and security documentation.

No public benchmark result is included in this walking skeleton.
No public benchmark result is included in this experimental walking skeleton.
2 changes: 2 additions & 0 deletions NOTICE
Original file line number Diff line number Diff line change
@@ -1,10 +1,12 @@
Laconian licensing map

Code under src/, tests/, .github/, pyproject.toml, and skills/if/SKILL.md: Apache-2.0.
.codex-plugin/, .agents/, and tools/: Apache-2.0.
README files, docs/, evals/cases/, benchmarks/methodology.md, and published benchmark results: CC-BY-4.0.
evals/manifests/: CC-BY-4.0.
evals/baselines/caveman/SOURCE.md: CC-BY-4.0.
CHANGELOG.md, CONTRIBUTING.md, SECURITY.md, and evals/README.md: CC-BY-4.0.
assets/social/ and docs/social/: CC-BY-4.0.

Third-party material

Expand Down
94 changes: 85 additions & 9 deletions README.el.md
Original file line number Diff line number Diff line change
Expand Up @@ -54,23 +54,99 @@ assets, κλήσεις δικτύου ή οδηγίες εργαλείων ει

## Εγκατάσταση και απεγκατάσταση

Αντιγράψτε το μοναδικό αρχείο της δεξιότητας στον κατάλογο `if` ενός συστήματος πρακτόρων που
υποστηρίζει δεξιότητες Markdown:
Η προτεινόμενη μέθοδος είναι η εγκατάσταση του πρόσθετου από το αποθετήριο, σε συγκεκριμένη έκδοση:

```bash
mkdir -p "<agent-skills-directory>/if"
cp skills/if/SKILL.md "<agent-skills-directory>/if/SKILL.md"
codex plugin marketplace add agent-axiom/laconian --ref v0.1.0-alpha.1 --json
codex plugin add laconian@laconian --json
```

Για απεγκατάσταση, αφαιρέστε το αρχείο που αντιγράψατε:
Καλέστε την εγκατεστημένη δεξιότητα ως `$laconian:if`. Αν δεν εμφανιστεί αμέσως, ξεκινήστε νέα
εργασία ή επανεκκινήστε το Codex. Επαληθεύστε τον εντοπισμό της με:

```bash
rm "<agent-skills-directory>/if/SKILL.md"
rmdir "<agent-skills-directory>/if"
codex plugin list --marketplace laconian --json
```

Η θέση του placeholder εξαρτάται από το σύστημα. Ο λειτουργικός σκελετός δεν ισχυρίζεται ακόμη ότι
καλύπτει την εγκατάσταση σε συγκεκριμένα συστήματα πρακτόρων.
Απεγκατάσταση πρόσθετου:

```bash
codex plugin remove laconian@laconian --json
codex plugin marketplace remove laconian --json
```

Για αυτόνομη εγκατάσταση του ενός αρχείου, σε συγκεκριμένη έκδοση:

```bash
(
set -eu
skill_dir="$HOME/.agents/skills/if"
skill_target="$skill_dir/SKILL.md"
skill_expected_sha256="5c549c7c492c66a6b3ac5560499353b71615ffc6b93c4b1811f741a8f3d54006"
test ! -L "$skill_dir"
mkdir -p "$skill_dir"
test ! -L "$skill_dir"
test ! -e "$skill_target"
test ! -L "$skill_target"
skill_tmp="$(mktemp "$skill_dir/.SKILL.md.XXXXXX")"
trap 'rm -f "$skill_tmp"' EXIT
curl -fsSL "https://raw.githubusercontent.com/agent-axiom/laconian/v0.1.0-alpha.1/skills/if/SKILL.md" -o "$skill_tmp"
if command -v sha256sum >/dev/null 2>&1; then
skill_actual_sha256="$(sha256sum "$skill_tmp")"
else
skill_actual_sha256="$(shasum -a 256 "$skill_tmp")"
fi
skill_actual_sha256="${skill_actual_sha256%% *}"
test "$skill_actual_sha256" = "$skill_expected_sha256"
chmod 0644 "$skill_tmp"
ln "$skill_tmp" "$skill_target"
if ! test "$skill_tmp" -ef "$skill_target"; then
skill_misdirected="$skill_target/${skill_tmp##*/}"
if test -f "$skill_misdirected" &&
test ! -L "$skill_misdirected" &&
test "$skill_tmp" -ef "$skill_misdirected"; then
rm "$skill_misdirected"
fi
false
fi
)
```

Το πρόγραμμα εγκατάστασης αρνείται να χρησιμοποιήσει συμβολικό σύνδεσμο είτε στον κατάλογο της
δεξιότητας είτε στον προορισμό και δεν αντικαθιστά καμία υπάρχουσα διαδρομή προορισμού.

Καλέστε την αυτόνομη δεξιότητα ως `$if`. Επαληθεύστε το αντίγραφο με:

```bash
test -s "$HOME/.agents/skills/if/SKILL.md"
```

Η αυτόνομη απεγκατάσταση δέχεται μόνο το αμετάβλητο κανονικό αρχείο. Αρνείται συμβολικό σύνδεσμο
είτε στον κατάλογο της δεξιότητας είτε στο αρχείο προορισμού, καθώς και τροποποιημένο ή
αντικατεστημένο αρχείο· αυτές οι περιπτώσεις απαιτούν χειροκίνητο έλεγχο. Ο κατάλογος αφαιρείται
μόνο αν είναι κενός:

```bash
(
set -eu
skill_dir="$HOME/.agents/skills/if"
skill_target="$skill_dir/SKILL.md"
skill_expected_sha256="5c549c7c492c66a6b3ac5560499353b71615ffc6b93c4b1811f741a8f3d54006"
test ! -L "$skill_dir"
test -d "$skill_dir"
test -f "$skill_target"
test ! -L "$skill_target"
if command -v sha256sum >/dev/null 2>&1; then
skill_actual_sha256="$(sha256sum "$skill_target")"
else
skill_actual_sha256="$(shasum -a 256 "$skill_target")"
fi
skill_actual_sha256="${skill_actual_sha256%% *}"
test "$skill_actual_sha256" = "$skill_expected_sha256"
rm "$skill_target"
rmdir "$skill_dir" 2>/dev/null || true
)
```

## Benchmark τεσσάρων σκελών

Expand Down
95 changes: 86 additions & 9 deletions README.grc-x-laconian.md
Original file line number Diff line number Diff line change
Expand Up @@ -72,23 +72,100 @@ calls`, οὐ `minify` ποιεῖ τὸν `code`, οὐ συμπιέζει τ

## Ἐγκατάστασις καὶ ἀφαίρεσις

Τὸ ἓν ἀρχεῖον τοῦ `skill` εἰς τὸν κατάλογον `if` τοῦ `agent host` ὃς
`Markdown skills` δέχεται ἀντίγραψον:
Ἁ προτιμητὰ ἐγκατάστασις διὰ τοῦ ἀπὸ τοῦ ἀποθετηρίου `plugin`, τᾶς ἐκδόσιος
ὡρισμένας ἐούσας:

```bash
mkdir -p "<agent-skills-directory>/if"
cp skills/if/SKILL.md "<agent-skills-directory>/if/SKILL.md"
codex plugin marketplace add agent-axiom/laconian --ref v0.1.0-alpha.1 --json
codex plugin add laconian@laconian --json
```

Τὸ ἀντίγραφον ἄφελε, εἰ ἀφαιρεῖν βούλει:
Τὸ ἐγκατασταθὲν `skill` τῷ `$laconian:if` κάλει. Αἴκα μὴ παραχρῆμα φαίνηται,
καινὸν `task` ἄρξαι ἢ τὸν Codex ἀναστᾶσαι χρῄζει. Τὰν εὕρεσιν δοκίμασον:

```bash
rm "<agent-skills-directory>/if/SKILL.md"
rmdir "<agent-skills-directory>/if"
codex plugin list --marketplace laconian --json
```

Ὁ `placeholder` καθ’ ἕκαστον `host` ἴδιος ἐστίν. Τὸ `walking skeleton` οὔπω
φάσκει πᾶσι τοῖς ὀνομαζομένοις `agent hosts` τὰν ἐγκατάστασιν δεδοκιμακέναι.
Ἀφαίρεσις τοῦ `plugin`:

```bash
codex plugin remove laconian@laconian --json
codex plugin marketplace remove laconian --json
```

Εἰ δὲ τὸ ἓν ἀρχεῖον, τᾶς ἐκδόσιος ὡρισμένας, αὐτὸ μόνον ἐγκαθιστάμεν:

```bash
(
set -eu
skill_dir="$HOME/.agents/skills/if"
skill_target="$skill_dir/SKILL.md"
skill_expected_sha256="5c549c7c492c66a6b3ac5560499353b71615ffc6b93c4b1811f741a8f3d54006"
test ! -L "$skill_dir"
mkdir -p "$skill_dir"
test ! -L "$skill_dir"
test ! -e "$skill_target"
test ! -L "$skill_target"
skill_tmp="$(mktemp "$skill_dir/.SKILL.md.XXXXXX")"
trap 'rm -f "$skill_tmp"' EXIT
curl -fsSL "https://raw.githubusercontent.com/agent-axiom/laconian/v0.1.0-alpha.1/skills/if/SKILL.md" -o "$skill_tmp"
if command -v sha256sum >/dev/null 2>&1; then
skill_actual_sha256="$(sha256sum "$skill_tmp")"
else
skill_actual_sha256="$(shasum -a 256 "$skill_tmp")"
fi
skill_actual_sha256="${skill_actual_sha256%% *}"
test "$skill_actual_sha256" = "$skill_expected_sha256"
chmod 0644 "$skill_tmp"
ln "$skill_tmp" "$skill_target"
if ! test "$skill_tmp" -ef "$skill_target"; then
skill_misdirected="$skill_target/${skill_tmp##*/}"
if test -f "$skill_misdirected" &&
test ! -L "$skill_misdirected" &&
test "$skill_tmp" -ef "$skill_misdirected"; then
rm "$skill_misdirected"
fi
false
fi
)
```

Ὁ ἐγκαταστάτας `symbolic link` ἔν τε τῷ καταλόγῳ τοῦ `skill` καὶ ἐν τῷ τέλει
ἀρνεῖται, οὐδὲ ἤδη ἐοῦσαν ὁδὸν ἐν τῷ τέλει ἐπικαλύπτει.

Τὸ καθ᾽ αὑτὸ `skill` τῷ `$if` κάλει. Τὸ ἀντίγραφον τῷδε δοκίμασον:

```bash
test -s "$HOME/.agents/skills/if/SKILL.md"
```

Ἁ καθ᾽ αὑτὸ ἀφαίρεσις μόνον τὸ ἀμετάβλητον ὀρθὸν ἀρχεῖον δέχεται. `Symbolic
link` ἔν τε τῷ καταλόγῳ τοῦ `skill` καὶ ἐν τῷ τέλει, ἢ μεταβεβλημένον ἢ
ἀντικατασταθὲν ἀρχεῖον, ἀρνεῖται· ταῦτα χερσὶν ἐπισκεπτέα. Τὸν κατάλογον
μόνον αἴκα κενὸς ᾖ ἀφαιρεῖ:

```bash
(
set -eu
skill_dir="$HOME/.agents/skills/if"
skill_target="$skill_dir/SKILL.md"
skill_expected_sha256="5c549c7c492c66a6b3ac5560499353b71615ffc6b93c4b1811f741a8f3d54006"
test ! -L "$skill_dir"
test -d "$skill_dir"
test -f "$skill_target"
test ! -L "$skill_target"
if command -v sha256sum >/dev/null 2>&1; then
skill_actual_sha256="$(sha256sum "$skill_target")"
else
skill_actual_sha256="$(shasum -a 256 "$skill_target")"
fi
skill_actual_sha256="${skill_actual_sha256%% *}"
test "$skill_actual_sha256" = "$skill_expected_sha256"
rm "$skill_target"
rmdir "$skill_dir" 2>/dev/null || true
)
```

## `Benchmark` τεσσάρων `arms`

Expand Down
Loading