# chamnan — ώστε ένα αποθετήριο να γνωρίζει τον εαυτό του

<sub>[🇬🇧 English](../../README.md) · [🇨🇳 中文](README.zh-CN.md) · [🇹🇼 繁體中文](README.zh-TW.md) · [🇯🇵 日本語](README.ja.md) · [🇰🇷 한국어](README.ko.md) · [🇹🇭 ไทย](README.th.md) · [🇻🇳 Tiếng Việt](README.vi.md) · [🇮🇩 Indonesia](README.id.md) · [🇮🇳 हिन्दी](README.hi.md) · [🇧🇩 বাংলা](README.bn.md) · [🇵🇰 اردو](README.ur.md) · [🇸🇦 العربية](README.ar.md) · [🇮🇱 עברית](README.he.md) · [🇹🇷 Türkçe](README.tr.md) · [🇷🇺 Русский](README.ru.md) · [🇺🇦 Українська](README.uk.md) · [🇵🇱 Polski](README.pl.md) · [🇨🇿 Čeština](README.cs.md) · [🇩🇪 Deutsch](README.de.md) · [🇳🇱 Nederlands](README.nl.md) · [🇫🇷 Français](README.fr.md) · [🇪🇸 Español](README.es.md) · [🇵🇹 Português](README.pt-PT.md) · [🇧🇷 Português (BR)](README.pt-BR.md) · [🇮🇹 Italiano](README.it.md) · [🇷🇴 Română](README.ro.md) · [🇭🇺 Magyar](README.hu.md) · [🇸🇪 Svenska](README.sv.md) · [🇫🇮 Suomi](README.fi.md) · [🇩🇰 Dansk](README.da.md) · [🇳🇴 Norsk](README.no.md) · [🇵🇭 Tagalog](README.tl.md)</sub>

> Αυτή η σελίδα δεν περιέχει κανέναν αριθμό, σκόπιμα. Όλες οι μετρήσεις βρίσκονται στο αγγλικό README και αλλάζουν σε κάθε έκδοση· αυτή η σελίδα όχι. → [Evidence](../../README.md#evidence)

## Τι είναι

Ένα πρόσθετο για το Claude Code. Χτίζει ένα ευρετήριο του αποθετηρίου που διαβάζει ο πράκτορας αντί να σαρώνει τα αρχεία ένα προς ένα, και κρατά το τεχνικό πλαίσιο που συσσωρεύεται κατά την εργασία — την κατάσταση της δουλειάς, τις σημειώσεις συνεδρίας, τους λόγους πίσω από τις αποφάσεις και τις διαδικασίες που ξαναβγάζεις κάθε φορά.

Ό,τι γράφει είναι απλό markdown, καταχωρημένο δίπλα στον κώδικα. Καμία κλήση δικτύου κατά την εκτέλεση, καμία βάση δεδομένων, κανένας δαίμονας, κανένα μοντέλο embedding — μόνο η πρότυπη βιβλιοθήκη της Python.

## Τι λύνει

Σε κάθε νέα συνεδρία, και κάθε φορά που το πλαίσιο συμπιέζεται, χάνεται ό,τι είχε καταλάβει ο πράκτορας για τον κώδικά σου και ξαναρχίζει την αναζήτηση από την αρχή.

Το chamnan κάνει αυτή την επανανακάλυψη περιττή: το ευρετήριο παραδίδεται στην αρχή της συνεδρίας και το κόστος είναι ένας γνωστός, φραγμένος αριθμός αντί για απεριόριστες αναγνώσεις αρχείων.

## Εγκατάσταση

```bash
claude plugin marketplace add ArcticFox2029/chamnan
claude plugin install chamnan@chamnan
```

Άνοιξε μια νέα συνεδρία και τρέξε `/chamnan:bootstrap` μία φορά ανά αποθετήριο.

<!-- generated: build_sections.py -->

## Όλες οι δυνατότητες

Τέσσερις ικανότητες. Ό,τι αναφέρεται παρακάτω τρέχει πραγματικά στην τρέχουσα έκδοση. Κάθε μέρος απενεργοποιείται χωριστά στο `.chamnan/config.json`, και κανένα δεν εξαρτάται από τα άλλα.

### Κατανόηση — τι υπάρχει και τι συνδέεται με τι

| | |
|---|---|
| **Ευρετήριο** | `MAP.md` — μία γραμμή ανά αρχείο, παραγόμενη από τον ίδιο τον κώδικα. Ο πράκτορας διαβάζει το ευρετήριο και κάνει grep τη λεπτομέρεια που χρειάζεται, αντί να διατρέχει όλο το δέντρο. |
| **Επίπτωση** | Ποιος εξαρτάται από αυτό το αρχείο και ποια τεστ το καλύπτουν. Τα δικά του imports βρίσκονται ούτως ή άλλως στην κορυφή· ακριβή είναι η αντίστροφη κατεύθυνση — κάντε grep τη διαδρομή πριν αλλάξετε κάτι. |
| **Μοντέλο δεδομένων** | Ονόματα πινάκων και μοντέλων με μια γραμμή περιγραφής, αντλημένα από DDL, migrations και μοντέλα ORM — όχι ολόκληρο το σχήμα. Εμφανίζεται μόνο αν το αποθετήριο ορίζει κάποιο. |
| **Επιφάνεια API** | Μέθοδος, διαδρομή και handler, από διακοσμητές διαδρομών, έγγραφα OpenAPI και ορισμούς υπηρεσιών `.proto` — όχι ολόκληρη η προδιαγραφή. |
| **Ρυθμίσεις** | Τα ονόματα των μεταβλητών περιβάλλοντος που διαβάζει το αποθετήριο. **Μόνο ονόματα, ποτέ τιμές** — και προειδοποιεί αν το `.env` δεν είναι στο gitignore. |
| **Ανάπτυξη** | Τι τρέχει στ' αλήθεια, διαβασμένο από manifests Kubernetes, Ansible, Compose, Helm και CI: είδη και ονόματα, images, ρόλοι, pipelines. Από ένα Secret παίρνει μόνο το όνομα, τίποτα από όσα βρίσκονται από κάτω. |
| **Υλικό εκτός πηγαίου κώδικα** | Σαρωμένα έγγραφα, εξαγωγές, αρχειοθήκες — μόνο πλήθη, μεγέθη και οι επικρατούσες καταλήξεις. Υπάρχει για να μην πάει ο πράκτορας να κοιτάξει μόνος του, που κοστίζει πολύ περισσότερο. **Ποτέ δεν ανοίγεται, ποτέ δεν διαβάζεται.** |

### Μνήμη — τι γινόταν και γιατί

| | |
|---|---|
| **Κατάσταση εργασίας** | `STATE.md` — αυτό πάνω στο οποίο δουλεύει κανείς αυτή τη στιγμή· εισάγεται στην έναρξη της συνεδρίας ώστε η συμπύκνωση του πλαισίου να πάψει να το σβήνει. |
| **Καταγραφή συνεδρίας** | Μία ανά συνεδρία στο `.chamnan/sessions/`. Στην επόμενη συνεδρία φτάνει **μόνο ό,τι έμεινε ημιτελές**· μια συνεδρία που έκλεισε καθαρά δεν εισάγει τίποτα. |
| **Μνήμη** | `decisions/`, `lessons/`, `rules/`. Οι κανόνες είναι μόνιμοι περιορισμοί και γι' αυτό βρίσκονται μπροστά στον πράκτορα κάθε συνεδρία· οι αποφάσεις και τα διδάγματα δίνουν μόνο τίτλο και διαβάζονται όταν ο τίτλος φαίνεται σχετικός. |
| **Ανοιχτά νήματα** | Γραμμές εργασίας που δεν έχουν κλείσει ακόμη, μαζί με το ιστορικό των αρχείων που άγγιξε το νήμα — και συνεχίζουν να τα ακολουθούν και μετά από μετονομασία. |

### Επαναχρησιμοποίηση — ό,τι λύθηκε ήδη μία φορά

| | |
|---|---|
| **Διαδικασίες** | Δεξιότητες που ο πράκτορας γράφει **μόνος του** όταν συναντά κάτι σύνθετο ή επαναλαμβανόμενο. Όχι μια έτοιμη βιβλιοθήκη, αλλά ένας μηχανισμός. |
| **Εργαλεία** | Παρατηρεί ότι το ίδιο πρόχειρο script γράφτηκε ξανά και προτείνει να κρατηθεί — και το θυμίζει πριν γράψετε καινούργιο. |
| **Ροές εργασίας** | Παρατηρεί ότι οι ίδιες εντολές έτρεξαν με την ίδια σειρά σε ξεχωριστές ημέρες, και προτείνει να καταγραφεί η ακολουθία. |

### Συσσώρευση — τι έμαθε το αποθετήριο για τον εαυτό του

| | |
|---|---|
| **Ορόσημα** | Οι λίγες αλλαγές που ξανάπλασαν το αποθετήριο: τι μετακινήθηκε, γιατί άξιζε, ποιες περιοχές άγγιξε. |
| **Υποψήφια** | Οι επαναλαμβανόμενες ακολουθίες εντολών που εντοπίζονται μένουν **πάντα σε αναμονή ανθρώπινης επιβεβαίωσης**. Τίποτα δεν προάγεται αυτόματα. |
| **Περιβάλλοντα** | Δηλώστε τι είναι το production ή το staging και τι απαγορεύεται εκεί — και σας ειδοποιεί όταν η δήλωση παλιώσει. |
| **Αναφορά** | Τι κρατά ο χώρος εργασίας, αν είναι πράγματι προσιτό, και πώς άλλαξε το πλαίσιο ανά γύρο στο δικό σας αποθετήριο. Ο δικός σας αριθμός, όχι ο δικός μας. |

Η επαναλαμβανόμενη μηχανική δουλειά γίνεται επαναχρησιμοποιήσιμη γνώση του αποθετηρίου — **ούτε εκπαίδευση μοντέλου, ούτε αυτοματοποίηση του προγραμματιστή.** Είναι ένας τρόπος να διατηρηθεί δουλειά που αλλιώς θα υπήρχε μόνο στο μυαλό εκείνου που την έκανε.

## Εντολές

Όλες καλούνται από το κέλυφος, και ο πράκτορας τις καλεί και μόνος του.

| | |
|---|---|
| `chamnan-map` | χτίζει και ενημερώνει το ευρετήριο |
| `chamnan-report` | τι κρατά ο χώρος εργασίας και πώς άλλαξε το πλαίσιο ανά γύρο |
| `chamnan-impact` | ποιος εξαρτάται από αυτό το αρχείο και ποια τεστ το καλύπτουν |
| `chamnan-timeline` | τι έχει συμβεί σε αυτό το αρχείο ως τώρα |
| `chamnan-peek` | λέει τι υπάρχει μέσα σε ένα μεγάλο αρχείο χωρίς να το διαβάσει στο πλαίσιο |
| `chamnan-promote` | κρατά ένα script ως μόνιμο εργαλείο του αποθετηρίου |
| `chamnan-candidates` | να δείτε, να επιβεβαιώσετε ή να απορρίψετε τις επαναλήψεις που εντοπίστηκαν |
| `chamnan-env` | να δηλώσετε ένα περιβάλλον και τις απαγορεύσεις του, και να ελέγξετε αν η δήλωση είναι ακόμη φρέσκια |
| `chamnan-age` | από πού άρχισε να παλιώνει η αποθηκευμένη γνώση |

Και οι δεξιότητες που καλούνται μέσα από τη συνεδρία: `/chamnan:bootstrap` `/chamnan:remap` `/chamnan:resume` `/chamnan:remember` `/chamnan:milestone` `/chamnan:capture` `/chamnan:promote` `/chamnan:report`

## Τι γράφει και πού

Όλα μέσα στο `.chamnan/`, απλό markdown και JSON. Διαβάζονται, αλλάζουν με το χέρι και σβήνονται όποτε θέλετε χωρίς να χαλάσει τίποτα.

| | |
|---|---|
| `MAP.md` | τι υπάρχει και τι εξαρτάται από τι |
| `STATE.md` | τι γίνεται αυτή τη στιγμή |
| `sessions/` | πού σταμάτησε η προηγούμενη δουλειά |
| `memory/` | αποφάσεις, διδάγματα και μόνιμοι κανόνες |
| `threads/` | γραμμές εργασίας που είναι ακόμη ανοιχτές |
| `skills/` · `tools/` | διαδικασίες και scripts που αξίζει να κρατηθούν |
| `milestones.md` | οι αλλαγές που ξανάπλασαν το αποθετήριο |
| `config.json` | άναμμα και σβήσιμο κάθε μέρους, και το όριο μεγέθους του μπλοκ που εισάγεται στη συνεδρία |

**Η μόνη εγγραφή έξω από το `.chamnan/`** είναι ένα προαιρετικό Git pre-commit hook που κρατά το ευρετήριο στο ρυθμό του δέντρου — εγκαθίσταται μόνο αν πείτε ναι, και αφαιρείται.

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

## Ασφάλεια

| | |
|---|---|
| **Καμία κλήση δικτύου κατά την εκτέλεση** | Ούτε μία. Δεν χρειάζεται κλειδί API και τίποτα δεν στέλνεται πουθενά. |
| **Δεν ξαναγράφει τον κώδικά σας** | Αναφέρει, δεν επεξεργάζεται. Το ευρετήριο αντιγράφει τα σχόλια που ήδη γράψατε και δεν τα επινοεί· τα αρχεία χωρίς σχόλιο αναφέρονται ονομαστικά για να τα συμπληρώσετε εσείς. |
| **Χωρίς daemon, χωρίς εργασία στο παρασκήνιο** | Καμία μόνιμη διεργασία, καμία βάση δεδομένων, κανένα μοντέλο embedding — μόνο η τυπική βιβλιοθήκη της Python. |
| **Τα μυστικά φιλτράρονται πρώτα** | Ό,τι πρόκειται να γραφτεί ή να εισαχθεί στη συνεδρία περνά πρώτα από το φίλτρο μυστικών: μένουν τα *ονόματα* των μεταβλητών, όχι οι τιμές. Και το όριο που αυτό το φίλτρο δεν φτάνει είναι γραμμένο δίπλα στον ίδιο του τον αριθμό στο αγγλικό README. |
| **Τι μπορεί να σας κάνει ένα εγκατεστημένο πρόσθετο** | Εξηγείται πλήρως στο αγγλικό README, μαζί με το σημείο όπου το chamnan κόβει την αλυσίδα διαρροής. |

## Απαιτήσεις

Claude Code · Python · Git · macOS, Linux ή Windows

Τίποτε άλλο, και καμία εξάρτηση προς εγκατάσταση. Η ελάχιστη έκδοση της Python βρίσκεται στο [README › Requirements](../../README.md#requirements) — αυτή η σελίδα δεν φέρει αριθμούς, γιατί οι αριθμοί είναι που αλλάζουν.

## Απενεργοποίηση ή αφαίρεση

Απενεργοποιήστε κατά μέρη στο `.chamnan/config.json` · σταματήστε το σε ένα μόνο αποθετήριο · αφαιρέστε το πρόσθετο από όλο το μηχάνημα · σβήστε το `.chamnan/` όποτε θέλετε χωρίς να χαλάσει τίποτα — τα αναλυτικά βήματα στο [README › Update, disable, uninstall](../../README.md#update-disable-uninstall)

<!-- /generated -->

## Διάβασέ το πριν την εγκατάσταση

**Το chamnan είναι για εκείνον τον έναν κύριο φάκελο στον οποίο επιστρέφεις ξανά και ξανά.** Ό,τι κάνει πληρώνεται προκαταβολικά και εισπράττεται στις επόμενες συνεδρίες — σε ένα αποθετήριο που ανοίγεις μία φορά, πλήρωσες τα πάντα και δεν εισέπραξες τίποτα.

**Αναφέρει, δεν ξαναγράφει τον κώδικά σου.** Το ευρετήριο αντιγράφει τα σχόλια που έχεις ήδη γράψει και δεν επινοεί κανένα. Τα αρχεία χωρίς σχόλιο κατονομάζονται για να τα συμπληρώσεις ο ίδιος.

**Τα όριά του είναι μετρημένα και γραμμένα**, μαζί με τις μετρήσεις που στρέφονται κατά της ίδιας του της βασικής λειτουργίας.

## Πού βρίσκονται οι λεπτομέρειες

| | |
|---|---|
| Κάθε αριθμός και πώς μετρήθηκε | [README › Evidence](../../README.md#evidence) |
| Σουίτα ελέγχων παλινδρόμησης — μπορείς να την τρέξεις | [`tests/run_tests.py`](../../tests/run_tests.py) |
| Τι άλλαξε σε κάθε έκδοση και γιατί | [CHANGELOG.md](../../CHANGELOG.md) |
| Όλα τα υπόλοιπα | [README.md](../../README.md) |

---

<sub>MIT · [github.com/ArcticFox2029/chamnan](https://github.com/ArcticFox2029/chamnan)</sub>
