Υπαγόρευση prompts σε παράλληλους agents, lane προς lane
Εικονογράφηση

Υπαγόρευση prompts σε παράλληλους agents, lane προς lane

Όταν τρέχεις δύο ή τρεις agents μαζί, το prompting γίνεται το σημείο συμφόρησης. Ένα φωνητικό workflow για να τροφοδοτείς παράλληλα lanes χωρίς να φεύγεις.

Teodor Deleanu3 Σεπτεμβρίου 20268 λεπτά ανάγνωσης

Την πρώτη φορά που τρέχεις δύο coding agents δίπλα δίπλα, κάτι δεν πάει καλά, και χρειάζεσαι λίγο για να το ονομάσεις. Κάθε agent είναι γρήγορος. Ο καθένας μόνος του θα ήταν καθαρό κέρδος. Μαζί θα έπρεπε να είναι διπλό κέρδος. Αντ' αυτού η μέρα μοιάζει πιο κατακερματισμένη απ' ό,τι με έναν, και τελειώνεις το απόγευμα με λιγότερα ολοκληρωμένα απ' όσα περίμενες.

Ο λόγος δεν είναι οι agents. Είναι το σχήμα της εισόδου που χρειάζονται. Ένας coding agent τρέχει με πεζό λόγο: «σπάσε τον handler, κράτα τη δημόσια υπογραφή, πρόσθεσε ένα test για τη διαδρομή του timeout». Ο λόγος είναι φθηνός στη σκέψη και ακριβός στην παράδοση, επειδή η παράδοση σημαίνει να βάλεις τα χέρια σου και την προσοχή σου στο σωστό παράθυρο τη σωστή στιγμή. Με έναν agent, εκείνη η στιγμή συμπίπτει με τον φυσικό σου ρυθμό. Με τρεις, οι στιγμές έρχονται όποτε έρχονται, και η καθεμιά διακόπτει ό,τι είχες στη μέση.

Αυτό το κείμενο αφορά το πρόβλημα της παράδοσης, όχι της σκέψης. Είναι ένα πρακτικό workflow για να υπαγορεύεις prompts σε παράλληλα lanes με agents σε Mac, με τα ειλικρινή όρια μέσα. Αν δεν έχεις διαβάσει το Οδηγώντας το Claude Code με τη φωνή σου, εκείνο καλύπτει τα βασικά του ενός lane· αυτό εδώ υποθέτει ότι ήδη τρέχεις περισσότερα από ένα.

Γιατί τα παράλληλα lanes τιμωρούν ειδικά την πληκτρολόγηση

Ένα prompt έχει τρία κόστη: τη διαμόρφωσή του, την παράδοσή του και την ανάκαμψη μετά. Η διαμόρφωση είναι αναπόφευκτη και γίνεται κυρίως στο κεφάλι σου. Η παράδοση, όταν πληκτρολογείς, σημαίνει να μεταφέρεις την εστίαση στο terminal του agent, να βρεις τη γραμμή εισόδου, να γράψεις σαράντα με ογδόντα λέξεις και να πατήσεις return. Η ανάκαμψη σημαίνει να επιστρέψεις σε αυτό που έκανες πριν σε ρωτήσει ο agent.

Με ένα μόνο lane, το κόστος παράδοσης είναι μικρό επειδή μάλλον κοιτούσες ήδη εκείνο το terminal. Με παράλληλα lanes, σχεδόν ποτέ δεν το κοιτάς. Το lane ένα ρωτάει κάτι ενώ εσύ διαβάζεις το diff του lane δύο. Η ερώτηση είναι εύκολη· η απάντηση είναι μία πρόταση. Αλλά για να απαντήσεις πρέπει να φύγεις από το diff, και όταν γυρίσεις, ξαναδιαβάζεις τις τελευταίες τριάντα γραμμές για να βρεις πού ήσουν.

Πολλαπλασίασέ το με κάθε αλλαγή κατεύθυνσης, κάθε «ναι, συνέχισε», κάθε «όχι, το άλλο αρχείο», και το overhead συσσωρεύεται. Τα παράλληλα lanes δεν αποτυγχάνουν επειδή οι agents είναι αργοί. Αποτυγχάνουν επειδή γίνεσαι εσύ ο δίαυλος μηνυμάτων, και ένας δίαυλος που πρέπει να μετακινείται φυσικά ανάμεσα σε παράθυρα έχει απαίσια καθυστέρηση.

Η φωνή αφαιρεί το μεγαλύτερο μέρος του κόστους παράδοσης. Κρατάς τα μάτια στο diff, κρατάς πατημένο ένα πλήκτρο, λες την πρόταση, αφήνεις. Οι λέξεις προσγειώνονται στο πεδίο εισόδου του agent. Δεν έφυγες ποτέ.

Το setup που δουλεύει

Ορίστε το setup, επίτηδες βαρετό.

Hotkey, όχι παράθυρο. Το Keebye ζει στη γραμμή μενού και ακούει ένα hotkey με κράτημα ή πάτημα (δεξί Command από προεπιλογή· το Fn και το δεξί Option είναι οι άλλες επιλογές, και το Escape ακυρώνει μια υπαγόρευση σε εξέλιξη). Δεν υπάρχει παράθυρο εφαρμογής να ανοίξεις ούτε λειτουργία να μπεις. Κράτα, μίλα, άσε. Αυτό μετράει περισσότερο απ' ό,τι ακούγεται: ένα εργαλείο υπαγόρευσης που χρειάζεται δικό του παράθυρο είναι απλώς άλλο ένα lane.

Εισαγωγή στο εστιασμένο πεδίο. Η μεταγραφή εισάγεται εκεί που είναι ο κέρσοράς σου. Από προεπιλογή αυτό γίνεται με paste, με chunking που καταλαβαίνει το terminal ώστε ένα μεγάλο prompt να μην κατακλύσει ένα shell. Αν τρέχεις agents μέσα σε tmux ή πάνω από SSH, όπου το paste συμπεριφέρεται άσχημα, υπάρχει προαιρετική λειτουργία πληκτρολόγησης που εισάγει το κείμενο ως πατήματα πλήκτρων Unicode· το υπαγόρευση που επιβιώνει στο terminal εξηγεί πότε να την ενεργοποιήσεις.

Batch, όχι streaming. Το Keebye μεταγράφει στην απελευθέρωση του πλήκτρου, ως μία εκφώνηση. Δεν θα δεις λέξεις να εμφανίζονται καθώς μιλάς. Για το prompting αυτό είναι η σωστή ανταλλαγή: θέλεις ολόκληρη η πρόταση να προσγειωθεί μονομιάς, καθαρισμένη, αντί να τη βλέπεις να χτίζεται λέξη λέξη ενώ η είσοδος του agent έχει ήδη μισή σκέψη μέσα.

Όλα on-device. Η μεταγραφή τρέχει τοπικά (ένα προεπιλεγμένο μοντέλο ρυθμισμένο για αγγλικά, ή ένα μοντέλο 25 γλωσσών αν το επιλέξεις). Μετά το κατέβασμα του μοντέλου, δουλεύει με το Wi-Fi κλειστό. Για prompting σε agents αυτό αφορά λιγότερο το θέατρο απορρήτου και περισσότερο την καθυστέρηση: δεν υπάρχει διαδρομή προς τον server και πίσω, οπότε ένα σύντομο prompt είναι έτοιμο σχεδόν μόλις αφήσεις το πλήκτρο.

Ένας ρυθμός εναλλαγής lanes

Το workflow που τελικά έμεινε έχει τρεις συνήθειες.

Τα μάτια μένουν στο lane που χρειάζεται κρίση. Κάθε στιγμή, ένα lane είναι εκεί που ανήκει η προσοχή σου, συνήθως ένα diff ή η έξοδος κάποιων tests. Αυτό είναι το lane που διαβάζεις. Τα υπόλοιπα παίρνουν μόνο σύντομες προφορικές οδηγίες. Όταν το lane δύο χρειάζεται απόφαση, ρίχνεις μια ματιά, κλικάρεις στην είσοδό του, κρατάς το πλήκτρο, λες την απόφαση, αφήνεις και κλικάρεις πίσω. Το κλικ είναι το μόνο μηχανικό κόστος· η ίδια η πρόταση είναι δωρεάν.

Τα prompts λέγονται ως ολοκληρωμένες προτάσεις. Οι agents τα πάνε καλύτερα με πλήρεις προτάσεις παρά με τηλεγραφικά θραύσματα, και η υπαγόρευση παράγει πλήρεις προτάσεις φυσικά, επειδή έτσι μιλάνε οι άνθρωποι. Το «Κάνε revert την αλλαγή σχήματος αλλά κράτα τη μετονομασία του API, μετά ξανατρέξε το migration και δείξε μου την έξοδο» είναι μια χαρά εκφωνημένο prompt. Πληκτρολογημένο είναι κουραστικό.

Τα παραγεμίσματα φεύγουν, το νόημα όχι. Το καθάρισμα του Keebye βασίζεται εξ ορισμού σε κανόνες: αφαιρεί το «εεε», το «χμ», την επαναλαμβανόμενη λέξη, και αφήνει τη διατύπωσή σου ήσυχη. Υπάρχει προαιρετικό γυάλισμα με τοπικό LLM on-device για πιο τακτοποιημένες προτάσεις, με μια δικλείδα πιστότητας που επιστρέφει στην κυριολεκτική μεταγραφή όταν η γυαλισμένη εκδοχή δείχνει σοβαρή απώλεια tokens, διόγκωση ή επανάληψη. Αυτή η δικλείδα είναι ευριστική, όχι σημασιολογικός έλεγχος: δεν επαληθεύει ότι το γυαλισμένο κείμενο διατήρησε το νόημά σου ή μια άρνηση. Για prompting σε agent, οι περισσότεροι αφήνουν το γυάλισμα κλειστό· μια κυριολεκτική μεταγραφή είναι ακριβώς αυτό που είπες, και αυτό θέλεις να τρέξει ο agent.

Για τι κάνει η φωνή, lane προς lane

Δεν θέλει κάθε prompt να ειπωθεί. Μετά από μερικούς μήνες, ο διαχωρισμός είναι περίπου αυτός.

Αλλαγές κατεύθυνσης και συνέχειες: πάντα φωνή. «Συνέχισε.» «Όχι, το άλλο config.» «Πρόσθεσε ένα test για την άδεια περίπτωση και ξανατρέξε.» Αυτά είναι τα πιο πολυάριθμα prompts σε ένα παράλληλο session και χωράνε όλα σε μία ανάσα.

Σχόλια review: κυρίως φωνή. Το να διαβάζεις ένα diff και να αφηγείσαι τι πάει στραβά είναι φυσικό. «Ο βρόχος επανάληψης καταπίνει το σφάλμα· κάν' το log πριν το sleep και βάλε όριο πέντε προσπάθειες.» Η υπαγόρευση το πιάνει στον ρυθμό της ομιλίας ενώ τα μάτια σου μένουν στον κώδικα.

Αρχικές αναθέσεις εργασίας: μικτό. Ένα μεγάλο, δομημένο brief με διαδρομές αρχείων και περιορισμούς ωφελείται ακόμη από πληκτρολόγηση, ή από υπαγόρευση μιας πρόχειρης εκδοχής και μετά επεξεργασία. Η φωνή είναι μια χαρά για τον πεζό λόγο· τα ακριβή identifiers γράφονται ευκολότερα. Το προσαρμοσμένο λεξικό βοηθάει εδώ: πρόσθεσε μία φορά τα ονόματα modules του project σου και την επαναλαμβανόμενη ορολογία, και παύουν να μεταγράφονται ως η πλησιέστερη αγγλική λέξη.

Οτιδήποτε με κώδικα: πληκτρολογημένο. Το να υπαγορεύεις ένα regex είναι κακή εμπειρία. Υπαγόρευσε την οδηγία («γράψε ένα regex που ταιριάζει το version header»), όχι το τεχνούργημα.

Ειλικρινή όρια

Κάποια από αυτά είναι του Keebye· κάποια της κατηγορίας.

Καθυστέρηση στην πρώτη υπαγόρευση. Το μικρόφωνο ζεσταίνεται μετά την πρώτη υπαγόρευση της session και από εκεί και πέρα κρατάει ένα pre-roll 500 ms. Το πρώτο κράτημα της ημέρας μπορεί να πληρώσει το κόστος εκκίνησης της ροής, και μια λέξη που ειπώθηκε πριν ενεργοποιηθεί ο buffer μπορεί να κοπεί. Το Γιατί οι εφαρμογές υπαγόρευσης τρώνε την πρώτη σου λέξη καλύπτει τη μηχανική.

Ακρίβεια στα identifiers. Ονόματα μεταβλητών σε snake case και εσωτερικά ακρωνύμια είναι εκεί που δυσκολεύεται κάθε μοντέλο ομιλίας. Το λεξικό το μειώνει, δεν το εξαλείφει. Διάβασε το prompt πριν πατήσεις return σε οτιδήποτε καταστροφικό.

Ασφαλή πεδία. Το Keebye αρνείται να εισαγάγει κείμενο σε πεδία κωδικών και ασφαλούς εισόδου. Είναι σκόπιμο και περιστασιακά άβολο, όταν ένα terminal ζητάει passphrase.

Καμία φωνητική εντολή. Δεν υπάρχει λεξιλόγιο τύπου «νέα γραμμή» ή «επιλογή όλων». Το Keebye είναι εργαλείο υπαγόρευσης, όχι στρώμα φωνητικού ελέγχου. Η πλοήγηση ανάμεσα σε lanes παραμένει κλικ ή συντόμευση πληκτρολογίου.

Μόνο macOS. Το build για Windows δεν κυκλοφορεί.

Πού να πας μετά

Αν οι agents σου ζουν κυρίως σε έναν editor, οι οδηγοί για το Cursor και το Claude Code έχουν τα ειδικά ανά εργαλείο. Αν διαλέγεις ανάμεσα σε εφαρμογές υπαγόρευσης γι' αυτό το workflow, το Keebye vs Superwhisper είναι μια ειλικρινής σύγκριση που περιλαμβάνει και πού ταιριάζει καλύτερα το Superwhisper.

Η σύντομη εκδοχή όλων των παραπάνω: οι παράλληλοι agents δεν χρειάζονται να πληκτρολογείς γρηγορότερα. Χρειάζονται να πάψεις να είσαι το πιο αργό άλμα ανάμεσά τους. Κράτα τα μάτια στο lane που χρειάζεται κρίση και μίλα στα υπόλοιπα.

Τροφοδότησε κάθε lane από εκεί που είσαι

Ξεκίνα τη δωρεάν δοκιμή σου και υπαγόρευσε το επόμενο prompt σε όποιον agent περιμένει — χωρίς να φύγεις από το diff που διαβάζεις.

Start free trial

Early access: we'll email you the moment the macOS build is ready — your 14 days start when you first sign in from the app.

Συνέχισε την ανάγνωση