Γιατί Ξεχνάει το AI τον Κώδικά Σου και Πώς το Διορθώνεις
Γιατί ο AI coding agent σου χάνει το νήμα του project (και πώς το λύνεις)
Το έχεις ζήσει κι εσύ. Ξεκινάς με έναν AI coding assistant σε ένα project που κρατάει μέρες. Η πρώτη μέρα κυλάει ομαλά — φτιάχνει το API, γράφει tests, προσθέτει documentation. Την επόμενη μέρα ανοίγεις νέο session και ο agent δεν θυμάται τίποτα. Πρέπει να του εξηγήσεις ξανά τη δομή του project από την αρχή. Μέχρι την τρίτη ή τέταρτη μέρα, βρίσκεσαι να διαβάζεις χιλιάδες tokens από παλιά chats προσπαθώντας να θυμηθείς τι αποφασίστηκε πριν δύο sessions.
Το πρόβλημα δεν είναι μόνο το context window. Είναι κάτι πιο βασικό: αποθηκεύουμε την κατάσταση του project στο λάθος μέρος.
Το κόστος της μνήμης μέσα στο chat
Τα chats είναι ιδανικά για συζήτηση. Δεν είναι όμως κατάλληλα για να κρατάνε την ιστορία ενός project.
Γιατί δημιουργείται πρόβλημα:
- Μόλις μια απόφαση φύγει από την οθόνη, είναι δύσκολο να τη βρεις ξανά.
- Δεν υπάρχει μία ενιαία πηγή αλήθειας. Ποια έκδοση του spec ισχύει τελικά;
- Κάθε νέο session ξεκινάει από το μηδέν, ανεξάρτητα από το τι έχει γίνει πριν.
- Οι αποφάσεις αλλάζουν από session σε session χωρίς κανείς να τις καταγράφει κεντρικά.
Το πραγματικό bottleneck δεν είναι αν ο agent μπορεί να γράψει κώδικα. Είναι αν καταλαβαίνει τι χτίζεις και γιατί.
Η απλή λύση που δουλεύει
Αντί να κρατάς την κατάσταση του project μέσα σε chats, την αποθηκεύεις όπως και τον κώδικα: σε αρχεία μέσα στο repository.
Όχι σε wiki. Όχι σε εξωτερικό εργαλείο. Απλά δομημένα Markdown αρχεία με βασικά metadata.
Ένα τέτοιο αρχείο μοιάζει κάπως έτσι:
# Project Architecture Decision
Lifecycle: active
Role: spec
Project: payment-service
Updated: 2024-01-15
Related:
- implements: charter-payment-api
- pairs-with: implementation-log-payment-core
## Overview
Χρησιμοποιούμε το API της Stripe απευθείας αντί για wrapper...
## Key Decisions
- Idempotency keys σε όλες τις λειτουργίες
- Async webhook processing με exponential backoff
- Τα PII δεδομένα δεν αποθηκεύονται τοπικά
Δεν χρειάζεται ειδική σύνταξη ή βάση δεδομένων. Μόνο τίτλος, βασικά metadata και περιεχόμενο.
Τι μπορείς να κάνεις με αυτό το σύστημα
Ένα απλό CLI εργαλείο σου επιτρέπει να:
- Δημιουργείς νέα records με σταθερή δομή
- Αρχειοθετείς ολοκληρωμένα χωρίς να τα διαγράφεις
- Ενημερώνεις σχέσεις μεταξύ records αυτόματα
- Φιλτράρεις και βλέπεις όλα τα active records
- Ελέγχεις ότι οι σχέσεις δείχνουν σε υπαρκτά αρχεία
Πώς αλλάζει η ροή εργασίας με AI agents
Αντί να ζητάς από έναν νέο agent να διαβάσει όλο το chat history, του δίνεις εντολές:
docs list --project=payment-service --role=spec
docs check
Ο agent βλέπει αμέσως τι είναι ενεργό, τι έχει ολοκληρωθεί και τι μένει ανοιχτό. Δεν ψάχνει σε παλιές συζητήσεις — διαβάζει structured δεδομένα.
Και το πιο σημαντικό: μπορεί να αλλάξει την κατάσταση μέσω εντολών, όχι με απευθείας επεξεργασία αρχείων. Αυτό μειώνει τα λάθη και κρατάει το σύστημα συνεπές.
Το αποτέλεσμα: νέο session, γνωστή κατάσταση
Με αυτή τη δομή, κάθε νέο session ξεκινάει με σαφή εικόνα:
- Ο agent τρέχει
docs listκαι βλέπει τι είναι active. - Διαβάζει τα logs και τα specs που χρειάζεται.
- Ξέρει τι έχει γίνει και τι απομένει.
Το chat γίνεται πλέον αναλώσιμο. Η πραγματική κατάσταση του project βρίσκεται στο repository.
Πού έχει νόημα αυτή η προσέγγιση
Σε βοηθάει αν:
- Δουλεύεις με AI pair programming tools σε projects που κρατάνε μέρες
- Θέλεις να συνεχίσεις workflows χωρίς να μεταφέρεις όλο το context
- Τρέχεις CI/CD pipelines που χρειάζονται έλεγχο συνέπειας
- Δουλεύεις σε ομάδα και χρειάζεστε κοινή κατανόηση του project
Δεν αντικαθιστά το Git ή τα tests. Απλά προσθέτει ένα επίπεδο οργάνωσης που κάνει την ανάπτυξη με AI agents πιο σταθερή στο χρόνο.
Η απλή αλήθεια
Δεν χρειάζεται να φτιάξεις κάτι περίπλοκο. Χρησιμοποιείς Markdown και CLI — εργαλεία που ήδη ξέρεις. Και ακριβώς επειδή είναι απλό, δουλεύει.