ΤΕΥΧΟΣ 029  ·  2 ΝΟΕΜΒΡΙΟΥ 2026 RSS
CodeCity
ΓΝΩΣΗ № 0029

openwiki: το wiki του αποθετηρίου σου που γράφεται και συντηρείται μόνο του

Το openwiki είναι εργαλείο γραμμής εντολών από τη langchain-ai, με διαδραστική επιφάνεια τερματικού, που διαβάζει το αποθετήριό σου και χτίζει ένα wiki σε Markdown, το οποίο μετά ξαναενημερώνει μόνο του ό,τι άλλαξε, κρατώντας κάθε ισχυρισμό δεμένο με το αρχείο-πηγή του. Στη δοκιμή το πακέτο 0.7.2 κατέβηκε και έτρεξε, η εντολή workspace έξω από αποθετήριο git αρνήθηκε με κωδικό εξόδου 1, μέσα σε αποθετήριο απάντησε με κωδικό 0, και το δέντρο εξαρτήσεων έφτασε τα 215,15 MB σε 40.962 αρχεία. Είναι MIT, θέλει Node 22.22.0 και πάνω, δεν είναι διακομιστής MCP, και η παραγωγή του wiki κοστίζει tokens του δικού σου μοντέλου — νούμερο που δεν μετρήθηκε.

openwiki, το wiki του αποθετηρίου που συντηρείται μόνο του

Τι κάνει

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

Η λέξη-κλειδί είναι «wiki». Δεν μιλάμε για σχόλια μέσα στον κώδικα ούτε για αυτόματη τεκμηρίωση συναρτήσεων. Μιλάμε για σελίδες Markdown, σαν τις σελίδες ενός wiki, μέσα στον φάκελο openwiki/ του αποθετηρίου. Το σημαντικό δεν είναι οι σελίδες· είναι το τι κρατούν: κάθε φράση παραπέμπει στο αρχείο-πηγή που τη στηρίζει, οπότε μια επόμενη ενημέρωση ξέρει τι άλλαξε και ξαναδουλεύει μόνο τα κομμάτια που κινήθηκαν.

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

Το openwiki το φτιάχνει η langchain-ai και είναι γραμμένο σε TypeScript (αποθετήριο). Η επιφάνειά του είναι τερματικό: διαδραστική εφαρμογή, όχι διακομιστής· δεν το δηλώνεις σε αρχείο ρυθμίσεων, δίνεις εντολή στο κέλυφος.

Ένα εύρημα από τη δοκιμή, γιατί θα το πατήσεις και εσύ: το openwiki --help δεν τυπώνει βοήθεια, ξεκινά την ίδια τη διαδραστική εφαρμογή. Έξω από πραγματικό τερματικό αυτό σταματά με το σφάλμα raw-mode της βιβλιοθήκης ink, δηλαδή δεν μπορείς να το τρέξεις από σωλήνα ή από σενάριο περιμένοντας κείμενο.

Τι λένε τα μητρώα. Στο npm η τελευταία έκδοση είναι η 0.7.2, με ημερομηνία έκδοσης από το πεδίο time["0.7.2"] στις 9 Οκτωβρίου 2026, 22:27 UTC, και 30 εκδόσεις συνολικά από τον Ιούνιο — τακτικός ρυθμός, όχι μονό εκτόξευμα (πακέτο). Το πεδίο license είναι MIT. Το πεδίο engines.node δηλώνει >=22.22.0: σε παλιότερο Node το εργαλείο δεν ξεκινά. Το πακέτο στον δίσκο είναι 2.273.842 bytes, δηλαδή 2,17 MB, σε 358 αρχεία. Οι λήψεις είναι 66.251 την εβδομάδα 23 με 29 Οκτωβρίου και 191.287 τον μήνα 30 Σεπτεμβρίου με 29 Οκτωβρίου (στατιστικά npm). Στο GitHub το αποθετήριο έχει 17.672 αστέρια, 1.306 forks, γύρω στα 190 ανοιχτά ζητήματα και γλώσσα TypeScript· δημιουργήθηκε στις 22 Ιουνίου 2026, το τελευταίο push είναι σήμερα, 2 Νοεμβρίου 2026, και δεν είναι αρχειοθετημένο (αποθετήριο).

Και η επιφύλαξη από την αρχή. Η έκδοση είναι 0.7.2, πριν το 1.0, και το project είναι μερικών μηνών. Τριάντα εκδόσεις σε τέσσερις μήνες σημαίνουν ζωντανό εργαλείο, αλλά και κίνηση: ό,τι μαθαίνεις σήμερα μπορεί να αλλάξει.

Για ποιον είναι

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

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

Ο επαγγελματίας κερδίζει δύο πράγματα. Πρώτο, το ξεκίνημα σε ξένο κώδικα: αντί να διαβάζει φακέλους επί ώρες, ανοίγει ένα wiki που λέει τι κάνει τι, με παραπομπή στο αρχείο. Δεύτερο, τη συντήρηση: όταν αλλάζει ο κώδικας, το --update ξαναδουλεύει ό,τι επηρεάστηκε. Υπάρχει και η έννοια του χώρου εργασίας, που ομαδοποιεί τα wiki σχετικών αποθετηρίων.

Για ποιον δεν είναι. Αν θέλεις τεκμηρίωση χωρίς κανένα μοντέλο, όχι: εδώ τα κείμενα τα γράφει πράκτορας, άρα θέλει μοντέλο και tokens. Αν το αποθετήριό σου δεν είναι git, σε σταματά με καθαρό μήνυμα. Αν έχεις παλιότερο Node, δεν τρέχει.

Εγκατάσταση

Τρεις εντολές, από οποιονδήποτε φάκελο. Ο έλεγχος πρώτα:

node -v

Αν η έκδοση είναι 22.22.0 ή νεότερη, προχωράς. Η παγκόσμια εγκατάσταση από το npm:

npm install -g openwiki

Και η πρώτη παραγωγή, μέσα στον φάκελο του αποθετηρίου, γιατί εκεί ψάχνει το git:

openwiki --init

Πρόσεξε τη μορφή, γιατί τη συγχέουν όλοι: το --init και το --update είναι σημαίες, όχι υποεντολές. Δεν υπάρχει openwiki generate ούτε openwiki update. Το επιβεβαιώσαμε μέσα στο ίδιο το πακέτο.

Μέσα από τον πράκτορα κώδικα

Δίνεις το όνομα του βοηθού και το openwiki γράφει ό,τι χρειάζεται, ώστε να δουλεύει από κάθε αποθετήριο:

openwiki integrations install codex

Ίδια μορφή για claude, cursor, opencode, copilot, antigravity, kiro, bob και omp. Η λίστα και η αφαίρεση:

openwiki integrations list
openwiki integrations uninstall codex

Αυτή η σύνδεση γράφει αρχεία στον χώρο του πράκτορα — skills και, για μερικούς hosts, καταχώριση MCP. Δεν μετρήσαμε το σχήμα αυτής της επιφάνειας, οπότε την αφήνουμε ως ισχυρισμό του κατασκευαστή.

Χωρίς εγκατάσταση καθόλου

Για να δεις τι κάνει πριν γράψει κάτι μόνιμο, το npm το κατεβάζει προσωρινά. Αυτή είναι η διαδρομή της δοκιμής:

npx -y openwiki@0.7.2

Ενημέρωση της γνώσης

Όταν το αποθετήριο αλλάξει, δεν ξαναχτίζεις από την αρχή:

openwiki --update

Χρήση σε κάθε LLM

Εδώ χρειάζεται προειδοποίηση, γιατί το μυαλό πάει στο MCP. Το openwiki δεν είναι διακομιστής MCP και δεν δηλώνεται σε αρχείο ρυθμίσεων. Δεν φορτώνει σχήματα εργαλείων σε καμία συνεδρία, δεν πιάνει χώρο στο πλαίσιο πριν γράψεις λέξη. Η χρήση γίνεται από το κέλυφος: ο βοηθός δίνει εντολή και διαβάζει απάντηση.

Η εντολή για μία ερώτηση και απάντηση χωρίς διαδραστικό περιβάλλον, αυτή που ταιριάζει σε σενάριο ή σε πράκτορα:

openwiki -p "ποιες σελίδες καλύπτουν τον έλεγχο ταυτότητας;"

Το -p είναι το σύντομο της σημαίας --print· χωρίς αυτό το εργαλείο ανοίγει την διαδραστική εφαρμογή. Αυτή η διάκριση είναι το κλειδί της χρήσης με βοηθό.

Claude Code

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

openwiki --update

Για την ενσωμάτωση με τον βοηθό, μία φορά:

openwiki integrations install claude

Codex CLI

Ίδιο σχήμα σε αρχείο AGENTS.md: όταν αλλάζει αρχιτεκτονική ή δημόσια συμπεριφορά, ακολουθεί ενημέρωση του wiki και η αλλαγή περνά μαζί με τον κώδικα. Εδώ αξίζει και η ερώτηση από το κέλυφος, γιατί ο πράκτορας δεν μπορεί να οδηγήσει διαδραστική επιφάνεια:

openwiki -p "ποιο αρχείο ορίζει τη ροή εισόδου των χρηστών;"

Η πρώτη παραγωγή, αν το wiki δεν υπάρχει ακόμα:

openwiki --init

Cursor

Μία οδηγία στους κανόνες του project αρκεί: η γνώση του αποθετηρίου μένει στο wiki και μετά από αλλαγή στη δομή τρέχει ενημέρωση. Για τη σύνδεση με τον συντάκτη:

openwiki integrations install cursor

Ο έλεγχος από το κέλυφος μένει ο ίδιος:

openwiki -p "πού ορίζεται το μοντέλο του χρήστη;"

Σε αλυσίδα αυτοματισμού

Επειδή η ενημέρωση δεν θέλει διαδραστικό τερματικό, χωρά σε προγραμματισμένη εργασία: ζητάς ενημέρωση μετά από κάθε συγχώνευση και η γνώση μένει συγχρονισμένη χωρίς άνθρωπο. Οι κωδικοί εξόδου βοηθούν: η εντολή χώρου εργασίας έξω από αποθετήριο git επιστρέφει 1 και μέσα σε αποθετήριο 0, οπότε η αλυσίδα κρίνει από τον κωδικό, όχι από την εντύπωση.

Δική μου σύσταση, όχι οδηγία του κατασκευαστή: κάρφωσε την έκδοση του πακέτου σε προγραμματισμένη εργασία. Τριάντα εκδόσεις σε τέσσερις μήνες σημαίνουν ότι το «τελευταίο» αλλάζει συχνά.

Πού κερδίζει, πού χάνει

Κερδίζει στη δέσμευση του ισχυρισμού. Δεν σου πετά ένα κείμενο που μπορεί να το έβγαλε από τον αέρα· κρατά κάθε φράση δεμένη με το αρχείο που τη στηρίζει, και γι’ αυτό ξαναδουλεύει μόνο ό,τι άλλαξε. Το --update δείχνει ότι το σχέδιο είναι σοβαρό: ενημέρωση σημαίνει στοχευμένη επανεξέταση, όχι επανάληψη.

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

Κερδίζει στη συνεννόηση με πράκτορες: μηδέν σύμβολα σχήματος, μηδέν εγγραφή σε αρχείο ρυθμίσεων, μηδέν επανεκκίνηση, έξοδος με κωδικό. Και στα βασικά: MIT, μηδέν χρήματα για το εργαλείο, 17.672 αστέρια μέσα σε τέσσερις μήνες.

Πού χάνει. Πρώτο, το βάρος: το πακέτο είναι 2,17 MB, αλλά στη δοκιμή το δέντρο έφτασε τα 215,15 MB σε 40.962 αρχεία και 263 πακέτα, με 27 άμεσες εξαρτήσεις που κουβαλούν την υποδομή σχεδόν όλων των παρόχων μοντέλων. Δεύτερο, η αυστηρότητα του Node: κάτω από 22.22.0 δεν ξεκινά. Τρίτο, το κόστος που δεν το ξέρεις από πριν: το wiki το γράφει μοντέλο, άρα πληρώνεις tokens ανά σελίδα, νούμερο που δεν μετρήσαμε. Τέταρτο, η απαίτηση του git. Πέμπτο, η διαδραστική φύση: το --help δεν δίνει βοήθεια, ανοίγει εφαρμογή, και έξω από τερματικό σκάει με το σφάλμα raw-mode του ink. Έκτο, η τηλεμετρία: το πακέτο κουβαλά posthog-node, αν και υπάρχει τρόπος να δεις τι στέλνει. Έβδομο, η ωριμότητα: 0.7.2, μερικών μηνών, γύρω στα 190 ανοιχτά ζητήματα.

Δοκιμή

Έτρεξα το εργαλείο και μέτρησα. Τα νούμερα αυτής της ενότητας βγήκαν από εκτελέσεις, όχι από τεκμηρίωση.

Το πακέτο κατέβηκε και έτρεξε με την παρακάτω εντολή:

npx -y openwiki@0.7.2

Δούλεψε. Το βάρος στον δίσκο μετρήθηκε χωριστά: το πλήρες node_modules έφτασε τα 215,15 MB σε 40.962 αρχεία και 263 πακέτα, ενώ το ίδιο το πακέτο openwiki είναι 10,75 MB. Τα πέντε μεγαλύτερα συμπλέγματα: @langchain 37,00 MB, @azure 24,78 MB, openai 22,44 MB, js-tiktoken 21,39 MB, @anthropic-ai 16,29 MB. Δηλαδή τα 204 από τα 215 MB είναι οι εξαρτήσεις, όχι το εργαλείο.

Η εντολή χώρου εργασίας, σκέτη:

openwiki workspace

Τύπωσε τη γραμμή χρήσης της και βγήκε με κωδικό 1.

Έξω από αποθετήριο git:

openwiki workspace current

The OpenWiki root must be inside a Git repository., κωδικός εξόδου 1. Μέσα σε αποθετήριο, η ίδια εντολή είπε This repository uses its own wiki. και βγήκε με κωδικό 0.

Οι άγνωστες σημαίες απορρίπτονται με μήνυμα. Το --dry-run απαντήθηκε με «Unknown option», γιατί υπάρχει μόνο μέσα στο ingest· το --version επίσης με «Unknown option».

Τι δεν μέτρησα. Δεν έτρεξα την παραγωγή του wiki, γιατί θέλει συνεδρία μοντέλου ή κλειδί παρόχου, και γι’ αυτό δεν μέτρησα πόσα tokens κοστίζει ανά σελίδα. Δεν μέτρησα χρόνο παραγωγής, δεν δοκίμασα την οπτική εξερεύνηση, δεν εξέτασα το σχήμα της επιφάνειας MCP. Όποιο νούμερο δεν αναφέρεται εδώ, δεν είναι δικό μας.

Τι κοστίζει

Το εργαλείο. Μηδέν χρήματα: το openwiki είναι MIT και δεν έχει κλειδωμένη λειτουργία. Αυτό που πληρώνεις είναι χώρος στον δίσκο και κλήσεις μοντέλου.

Το πλαίσιο. Δεν είναι διακομιστής MCP, οπότε δεν φορτώνει σχήματα εργαλείων σε κάθε συνεδρία: ο φόρος του σε tokens πριν γράψεις λέξη είναι μηδέν. Το βάρος του είναι το δέντρο εξαρτήσεών του. Με npx -y openwiki@0.7.2, το node_modules στον δίσκο έφτασε τα 215,15 MB σε 40.962 αρχεία και 263 πακέτα (δική μας μέτρηση, 2 Νοεμβρίου 2026). Το ίδιο το πακέτο openwiki είναι 10,75 MB· τα υπόλοιπα 204 MB είναι οι 27 άμεσες εξαρτήσεις του — @langchain 37,00 MB, @azure 24,78 MB, openai 22,44 MB, js-tiktoken 21,39 MB, @anthropic-ai 16,29 MB. Κουβαλά δηλαδή την υποδομή σχεδόν όλων των παρόχων μοντέλων.

Η δουλειά. Για να γράψει το wiki, το openwiki δεν είναι αυτόνομο μοντέλο: χρησιμοποιεί το session του agent κώδικα που έχεις ήδη, ή δικά του κλειδιά παρόχου. Άρα η παραγωγή κοστίζει tokens στο δικό σου μοντέλο, ανά σελίδα — και αυτό το νούμερο δεν το μετρήσαμε. Είναι ρητά ο λόγος που δεν παίρνει τέλειο σκορ: το κόστος το μαθαίνεις αφού το τρέξεις.

Προσοχή στην τηλεμετρία. Το πακέτο περιέχει posthog-node, και το CLI έχει σημαία --telemetry-file, που γράφει το ακριβές ανώνυμο payload σε τοπικό αρχείο JSON — δηλαδή μπορείς να δεις τι στέλνει πριν το στείλει.

Ετυμηγορία

Score: 8.5/10.

Το εργαλείο λύνει πρόβλημα που όλοι ξέρουν και κανείς δεν αντιμετωπίζει: τη γνώση που κάθεται μόνο στο κεφάλι ενός ανθρώπου. Δεν τη λύνει με γράφο ούτε με αναζήτηση· γράφει σελίδες και κρατά κάθε φράση δεμένη με το αρχείο που τη στηρίζει. Είναι MIT, έχει ζωντανό ρυθμό εκδόσεων, και η χρήση του δεν πιάνει χώρο στο πλαίσιο του βοηθού.

Το τίμημα το ξέρεις από πριν: 215,15 MB εξαρτήσεων, αυστηρή απαίτηση Node 22.22.0, ανάγκη για αποθετήριο git, διαδραστική επιφάνεια που δεν δίνει βοήθεια με --help, και ένα κόστος σε tokens που δεν το ξέρεις πριν το τρέξεις.

Πρακτικά: δοκίμασέ το σε ένα αποθετήριο που ξέρεις καλά, εκεί που θα καταλάβεις αμέσως αν οι σελίδες λένε αλήθεια. Τρέξε το με npx πρώτα, χωρίς δέσμευση. Αν σου αρέσει, βάλ’ το στον βοηθό σου με μία εντολή και κράτα την ενημέρωση σε προγραμματισμένη εργασία με κλειδωμένη έκδοση. Και κράτα ανοιχτό το νούμερο των tokens· αυτό θα κρίνει πού το βάζεις.

Πηγές:

https://github.com/langchain-ai/openwiki

https://www.npmjs.com/package/openwiki

https://github.com/langchain-ai/openwiki/releases/tag/v0.7.2

Εγκατάσταση

3 ΒΗΜΑΤΑ
  1. npm install -g openwiki
  2. openwiki --init
  3. openwiki --update
openwiki: το wiki του αποθετηρίου σου που γράφεται και συντηρείται μόνο του · ΑΠΟΤΕΛΕΣΜΑ 8,5/10
ΠΗΓΗ
github.com/langchain-ai/openwiki