Συνομιλία με πράκτορα
Αυτός ο οδηγός δείχνει πώς να εργάζεστε με έναν πράκτορα μέσα σε έναν χώρο.
Δημιουργήστε έναν χώρο
Ενότητα με τίτλο «Δημιουργήστε έναν χώρο»- Μεταβείτε στην επιλογή Χώροι στην πλαϊνή γραμμή
- Κάντε κλικ στο κουμπί + δίπλα στην επικεφαλίδα «Χώροι»
- Πληκτρολογήστε ένα όνομα — είναι υποχρεωτικό. Ένα κενό όνομα απορρίπτεται· το παράθυρο διαλόγου παραμένει ανοιχτό
- Προαιρετικά, προσθέστε πράκτορες από τον χώρο εργασίας
- Αν ο χώρος εργασίας έχει οποιοδήποτε αποθετήριο, εμφανίζεται ένας επιλογέας αποθετηρίων. Ξεκινά με όλα τα αποθετήρια επιλεγμένα· περιορίστε τα (ακόμη και αποεπιλέγοντας ένα μεμονωμένο αποθετήριο) στα αποθετήρια για τα οποία αυτός ο χώρος θα προμηθεύει worktree
- Επιβεβαιώστε
Το Control Center ανοίγει τον χώρο και ξεκινά στο παρασκήνιο τη δημιουργία ενός worktree αντιγραφής κατά την εγγραφή για κάθε επιλεγμένο αποθετήριο.
Στείλτε το πρώτο μήνυμα
Ενότητα με τίτλο «Στείλτε το πρώτο μήνυμα»Πληκτρολογήστε το μήνυμά σας στο πεδίο σύνταξης και πατήστε Enter. Ο πράκτορας αποστέλλεται και αρχίζει να μεταδίδει σε ροή την απάντησή του.
Αν ο χώρος βρίσκεται ακόμη σε προετοιμασία, το μήνυμά σας μπαίνει σε αναμονή αντί να χαθεί — το πεδίο σύνταξης το κρατά και το στέλνει αυτόματα μόλις τα worktree είναι έτοιμα.
Καθώς ο πράκτορας εργάζεται, βλέπετε τη σειρά του να μεταδίδεται σε ροή: τμήματα συλλογισμού, κλήσεις εργαλείων (αναγνώσεις αρχείων, εγγραφές, εντολές κελύφους) και κείμενο απάντησης, όλα μέσα σε ένα μήνυμα σειράς του πράκτορα.
Καθοδηγήστε έναν πράκτορα που εκτελείται
Ενότητα με τίτλο «Καθοδηγήστε έναν πράκτορα που εκτελείται»Όσο ένας πράκτορας εργάζεται, το απλό κείμενο συνομιλίας δεν βάζει σε ουρά νέα σειρά. Γίνεται κάρτα καθοδήγησης σε ουρά στη λωρίδα πάνω από το πεδίο σύνταξης και εγχέεται στη ζωντανή εκτέλεση στο επόμενο όριο σειράς. Δεν υπάρχει αναδυόμενη ειδοποίηση — η κάρτα είναι η ανατροφοδότηση.
Τρία πράγματα αλλάζουν αυτή τη συμπεριφορά:
- Ένα μήνυμα που περιέχει @-αναφορά στέλνεται πάντα ως μήνυμα, ποτέ ως καθοδήγηση
- Ένα μήνυμα που ξεκινά με εντολή κάθετου αντιμετωπίζεται πάντα ως αυτή η εντολή
- Ένα μήνυμα με επισύναψη στέλνεται πάντα ως μήνυμα — η ουρά καθοδήγησης είναι μόνο κείμενο
- Αν όλες οι ζωντανές εκτελέσεις έχουν ήδη ολοκληρωθεί, το κείμενο περνά και στέλνεται ως κανονικό μήνυμα
Εγκρίνετε μια αποκλεισμένη ενέργεια
Ενότητα με τίτλο «Εγκρίνετε μια αποκλεισμένη ενέργεια»Όταν ένας πράκτορας συναντήσει μια ενέργεια που φιλτράρουν οι περιορισμοί του — μια
καταστροφική εντολή, ένα προνομιακό εργαλείο — ο διακομιστής αποκλείει την
εκτέλεση και δημοσιεύει αίτημα έγκρισης σε κάθε συνδεδεμένο πελάτη. Αν έχετε
ανοιχτή αυτή τη συνομιλία, το αίτημα εμφανίζεται στη συνομιλία, πάνω από το
πεδίο σύνταξης, ως την ίδια κάρτα με αριθμημένες επιλογές που χρησιμοποιείται για
το ask_user (απόρριψη, έγκριση και προαιρετικά έγκριση για οκτώ ώρες). Δεν
υπάρχει παράλειψη: ένας αποκλεισμένος πράκτορας περιμένει μια απόφαση.
Αν βρίσκεστε αλλού στην εφαρμογή, ένα πλαίσιο του κελύφους που μένει πάντα πάνω από όλα εξακολουθεί να απαριθμεί ό,τι περιμένει, ώστε να ξεμπλοκάρετε τον πράκτορα χωρίς να ψάχνετε τον χώρο. Η επικάλυψη κρύβει ένα αίτημα τη στιγμή που η συνομιλία αυτού του χώρου βρίσκεται στην οθόνη, ώστε να μην απαντάτε ποτέ δύο φορές στην ίδια προτροπή.
Δεν υπάρχει χρονικό όριο: ένας αποκλεισμένος πράκτορας περιμένει μέχρι κάποιος να αποφασίσει. Το ίδιο αίτημα εμφανίζεται επίσης στη λωρίδα προσοχής των Εισερχομένων και στον πελάτη για κινητό.
Απαντήστε στην ερώτηση ενός πράκτορα
Ενότητα με τίτλο «Απαντήστε στην ερώτηση ενός πράκτορα»Ένας πράκτορας που χρειάζεται μια προτίμηση, μια απαίτηση που λείπει ή ένα
πραγματικό δίλημμα πρέπει να καλέσει το ask_user. Αν γράψετε την ερώτηση ως
μήνυμα συνομιλίας, η σειρά τελειώνει και πρέπει να στείλετε νέα προτροπή. Το
εργαλείο αποδίδει μια κάρτα με αριθμημένες επιλογές μέσα στη συνομιλία — επιλογές,
προαιρετικό ελεύθερο κείμενο ή και τα δύο — και η εκτέλεση περιμένει την απάντησή
σας.
Πατήστε μια μεμονωμένη επιλογή για να τη στείλετε (ο αριθμός στο τέλος γίνεται
βέλος με τον δείκτη πάνω της). Για πολλαπλές επιλογές και πληκτρολογημένες
απαντήσεις χρησιμοποιήστε το Συνέχεια (⌘↵ / Ctrl↵). Η Παράλειψη λέει
στον πράκτορα να διαλέξει μια λογική προεπιλογή και να μην ξαναρωτήσει.
Πρόκειται για ξεχωριστό μηχανισμό από την κάρτα έγκρισης παραπάνω: μια έγκριση σημαίνει «επιτρέπεται να το κάνω;», μια ερώτηση σημαίνει «ποιο από αυτά εννοούσατε;». Η υποβολή ερώτησης είναι διαθέσιμη στο ενσωματωμένο harness σε κάθε λειτουργία, ακόμη και σε όσες είναι μόνο για ανάγνωση (δεν μεταβάλλει τίποτα), και σκόπιμα δεν περιβάλλεται από προτροπή έγκρισης — ένα παράθυρο διαλόγου μπροστά από άλλο παράθυρο διαλόγου θα απέκλειε τα πάντα όταν δεν υπάρχει συνδεδεμένος εγκρίνων. Μια εκτέλεση χωρίς συνομιλία στην οποία να αποδοθεί απλώς δεν παίρνει το εργαλείο.
Σταματήστε έναν πράκτορα
Ενότητα με τίτλο «Σταματήστε έναν πράκτορα»Όσο υπάρχουν ζωντανές εκτελέσεις, το κουμπί αποστολής του πεδίου σύνταξης γίνεται κουμπί διακοπής. Καθαρίστε το πεδίο σύνταξης και πατήστε το — αυτό σταματά κάθε πράκτορα που εκτελείται σε αυτή τη συνομιλία.
Δεν υπάρχει στοιχείο διακοπής στην κεφαλίδα του χώρου ούτε συντόμευση πληκτρολογίου για αυτό. Για να σταματήσετε μόνο μία εκτέλεση όταν εκτελούνται πολλές, ανοίξτε την καρτέλα δραστηριότητας αυτής της εκτέλεσης — η κεφαλίδα της φέρει παύση/συνέχεια και διακοπή για τη συγκεκριμένη εκτέλεση (η διακοπή σας ζητά επιβεβαίωση). Παρατηρησιμότητα → Ζωντανά απαριθμεί κάθε πράκτορα που εκτελείται στον χώρο εργασίας με τον ίδιο χειρισμό.
Μια σταματημένη εκτέλεση επισημαίνεται ως διακοπείσα. Στείλτε νέο μήνυμα για να αποσταλεί ξανά.
Χρήση εντολών κάθετου
Ενότητα με τίτλο «Χρήση εντολών κάθετου»Πληκτρολογήστε / στο πεδίο σύνταξης για να δείτε τη λίστα εντολών. Όσες αλλάζουν
τη συμπεριφορά της συνομιλίας:
| Εντολή | Τι κάνει |
|---|---|
/plan |
Βάζει τον χώρο σε λειτουργία σχεδίου. Ένα σκέτο /plan απλώς οπλίζει τη λειτουργία· το /plan <request> την οπλίζει και στέλνει τα υπόλοιπα ως μήνυμά σας |
/goal <text> |
Καταγράφει τον στόχο εργασίας της συνομιλίας |
/loop <text> |
Επαναλαμβάνει μια εργασία μέχρι να ολοκληρωθεί |
/compact |
Διπλώνει το παλαιότερο ιστορικό σε σύνοψη με άγκυρα και συνεχίζει στο συμπυκνωμένο πλαίσιο |
/todo … |
Προβάλλει και επεξεργάζεται τη διατηρούμενη λίστα εκκρεμοτήτων αυτής της συνομιλίας |
Οι δεξιότητες εμφανίζονται στην ίδια λίστα κάτω από τον δικό τους χώρο ονομάτων
skill:, ώστε να μη συγκρούονται ποτέ με τις παραπάνω εντολές — μια δεξιότητα με
όνομα plan ή compact παραμένει προσβάσιμη:
| Εντολή | Τι εκτελεί |
|---|---|
/skill:<name> |
Μια δεξιότητα εγκατεστημένη στον χώρο εργασίας ή συνδεδεμένη με τον πράκτορα |
/skill:<repo>:<name> |
Μια δεξιότητα που παρέχεται από ένα από τα αποθετήρια που έχουν γίνει checkout σε αυτόν τον χώρο |
Οι δεξιότητες αποθετηρίου φέρουν σήμανση με το αποθετήριο από το οποίο προέρχονται,
γιατί ένα όνομα μόνο του δεν δηλώνει ποιες συμβάσεις ποιας υπηρεσίας κωδικοποιεί και
δύο αποθετήρια μπορεί να παρέχουν το καθένα ένα testing. Δεν χρειάζεται να
πληκτρολογήσετε το πρόθεμα για να βρείτε μία: πληκτρολογώντας το σκέτο όνομα της
δεξιότητας ταιριάζουν και οι καταχωρίσεις με χώρο ονομάτων.
Ένας πράκτορας φέρει πάντα μόνο τις δεξιότητες του αποθετηρίου στο οποίο εργάζεται αυτή τη στιγμή — δείτε Δεξιότητες ανά αποθετήριο. Το πεδίο σύνταξης δεν περιορίζεται έτσι: μπορείτε να καλέσετε τη δεξιότητα οποιουδήποτε αποθετηρίου ονομάζοντάς την.
Τα /compact και /todo τα υποκλέπτει ο πελάτης και δεν αποθηκεύονται ποτέ ως
μηνύματα — μια γραμμή /compact στη ροή της συνομιλίας θα μετακινούσε το όριο της
επόμενης συμπύκνωσης μία σειρά προς τα πίσω. Το /plan αλλάζει την αποθηκευμένη
λειτουργία του χώρου αντί να ταξιδεύει ως κείμενο. Έτσι, κανένα από τα τρία δεν
είναι «μήνυμα που στέλνετε στον πράκτορα»· μην περιμένετε να τα δείτε στο ιστορικό.
Ζητήστε πρώτα ένα σχέδιο
Ενότητα με τίτλο «Ζητήστε πρώτα ένα σχέδιο»Πριν από μια σύνθετη αλλαγή, βάλτε τον χώρο σε λειτουργία σχεδίου με το /plan, το
αναπτυσσόμενο μενού λειτουργίας στη γραμμή εργαλείων του πεδίου σύνταξης ή το
Shift+Tab. Στη συνέχεια ο πράκτορας ερευνά μόνο για ανάγνωση και παραδίδει ένα
σχέδιο με καθορισμένη δομή, το οποίο εγκρίνετε πριν ξεκινήσει οποιαδήποτε εργασία.
Δείτε Χρήση λειτουργίας σχεδίου.
Προσεγγίστε έναν πράκτορα χωρίς αποκλειστικό χώρο
Ενότητα με τίτλο «Προσεγγίστε έναν πράκτορα χωρίς αποκλειστικό χώρο»Δεν χρειάζεστε έναν χώρο ανά πράκτορα. Σε οποιονδήποτε χώρο:
@alice can you look at the failing tests in src/auth_test.dart?Ο πράκτορας που αναφέρατε προστίθεται στον χώρο και αποστέλλεται με το πλαίσιο αυτού του χώρου. Δείτε την @-αναφορά πρακτόρων για το πώς γίνεται η αντιστοίχιση των ονομάτων.
Σχετικοί οδηγοί
Ενότητα με τίτλο «Σχετικοί οδηγοί»- Χρήση χώρων
- @-αναφορά πρακτόρων
- Χρήση λειτουργίας σχεδίου
- Ρύθμιση ενσωμάτωσης Slack για να κάνετε το ίδιο από το Slack