# Το Cursor επεξεργάζεται το αρχείο. Το Maguyva βλέπει το αποθετήριο.

Canonical source: https://maguyva.ai/el/for-cursor

License: text under [CC BY 4.0](https://creativecommons.org/licenses/by/4.0/); code samples under [MIT-0](https://opensource.org/license/mit-0); the Maguyva name, logos, brand assets and other code are not covered. Details: [maguyva.ai/license](https://maguyva.ai/license).

Το Cursor είναι ο επεξεργαστής κώδικα. Σε ένα ενιαίο αποθετήριο, ο πράκτορας εξακολουθεί να χρειάζεται έναν χάρτη για το ποιο αρχείο έχει σημασία. Το Maguyva ευρετηριάζει τη βάση κώδικά σας και την προσφέρει πίσω μέσω MCP (σημασιολογική, AST, γραφήματος και κειμένου), ώστε το «πού συμβαίνει η αυθεντικοποίηση» να επιστρέφει την πραγματική ροή αυθεντικοποίησης, όχι επτά ψευδοϋλοποιήσεις δοκιμών.

> Το Cursor επεξεργάζεται ό,τι του υποδεικνύετε. Το Maguyva λέει στον πράκτορα ποιο αρχείο να υποδείξει.

## Τι κάνει κάθε επίπεδο

Τέσσερα κομμάτια. Το καθένα έχει τη δουλειά του.

### Cursor

Εκεί όπου γράφετε πραγματικά κώδικα.

### Αναφορές @ + καρφιτσώματα

Το χειροκίνητο πλαίσιο κερδίζει, μέχρι να μεγαλώσει το αποθετήριο.

### Maguyva

Αυτόματα δεδομένα βάσης κώδικα μέσω MCP.

### Χώροι εργασίας, όχι χρήστες

Οι πράκτορες δεν επιβαρύνονται με χρεώσεις ανά χρήστη. [Δείτε τις τιμές](https://maguyva.ai/el/pricing)

## Το Cursor είναι ο επεξεργαστής κώδικα. Χρησιμοποιήστε το.

Το IDE δεν είναι το πρόβλημα. Η συμπλήρωση με Tab, η επεξεργασία-με-AI, οι επεξεργασίες πολλαπλών αρχείων και το `.cursor/rules` του Cursor είναι εξαιρετικά, και ήδη τα χρησιμοποιείτε για:

- Ενσωματωμένες προτάσεις και επεξεργασία-με-AI στο ανοιχτό αρχείο.
- Επεξεργασίες πολλαπλών αρχείων όταν η αλλαγή είναι τοπική.
- Το `.cursor/rules` για συμβάσεις αποθετηρίου και κανόνες στιλ.
- Αναφορές `@` για να φέρετε ένα συγκεκριμένο αρχείο στο πλαίσιο.

Συνεχίστε έτσι. Τίποτα από αυτά δεν χάνεται.

Όμως σε ένα πραγματικό ενιαίο αποθετήριο (TypeScript με εξαρτήσεις χώρου εργασίας, υπηρεσίες Python, μεικτά πακέτα) το πλαίσιο του πράκτορα σπάει τη στιγμή που το σχετικό αρχείο δεν είναι ήδη στο ραντάρ σας.

## Χειροκίνητες διορθώσεις που έχετε ήδη δοκιμάσει, και πού αστοχούν

Τέσσερις χειροκίνητες λύσεις και τα σημεία όπου αποτυγχάνουν. Αριστερά = τι κάνετε σήμερα. Δεξιά = πού αποτυγχάνει.

### // καρφιτσώστε τα αρχεία

Κάνετε `@`-αναφορά στα τρία αρχεία που πιστεύετε ότι έχουν σημασία. Το Cursor επεξεργάζεται καθαρά μέσα σε αυτά.

### // το καρφίτσωμα είναι μαντεψιά

Το καρφίτσωμα λειτουργεί όταν ήδη γνωρίζετε ποια αρχεία εμπλέκονται. Ολόκληρο το νόημα των εργαλείων πλαισίου είναι να αναδεικνύουν τα αρχεία που δεν ξέρατε να καρφιτσώσετε.

### // επικολλήστε τα αποσπάσματα

Επικολλάτε 200 γραμμές από άλλο πακέτο μέσα στη συνομιλία για να δώσετε στον πράκτορα αρκετό πλαίσιο.

### // ο επικολλημένος κώδικας μπαγιατεύει

Το απόσπασμα που επικολλήσατε στις 9 π.μ. δεν αντικατοπτρίζει το rebase που έκανε ο συνάδελφός σας στις 11 π.μ. Ο πράκτορας επεξεργάζεται πάνω σε μια φαντασματική έκδοση του πακέτου.

### // γράψτε ένα έγγραφο πλαισίου

Γράφετε ένα αρχείο `.cursor/rules` ή ένα markdown αρχιτεκτονικής. Είναι σωστό σήμερα.

### // τα έγγραφα ξεπερνιούνται πιο γρήγορα από τον κώδικα

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

### // κρατήστε τα αρχεία κανόνων

Προσθέτετε `.cursor/rules` για ονοματοδοσία, lint, εντολές κατασκευής. Εξαιρετικό για τη συμπεριφορά.

### // οι κανόνες ≠ ευρετήριο

Το `.cursor/rules` είναι το σωστό μέρος για το “πάντα τρέχετε pnpm tsc -b πριν τις υποβολές.” Δεν είναι ένα ευρετήριο με δυνατότητα ερωτημάτων για κάθε σύμβολο, αρχείο και σημείο κλήσης στο ενιαίο αποθετήριό σας.

## Το Maguyva είναι το επίπεδο από κάτω

Δεν είναι υποκατάστατο του Cursor. Είναι το επίπεδο πλαισίου αποθετηρίου που στηρίζεται στην υποστήριξη MCP του Cursor.

- **Σημασιολογική + AST + γράφημα + κείμενο**: αναζήτηση με βάση το νόημα, τη δομή, την εξάρτηση ή το ακριβές κείμενο. Κάθε αποτέλεσμα επιστρέφει μια διαδρομή αρχείου και έναν αριθμό γραμμής.
- **Σε όλα τα πακέτα από προεπιλογή**: σημεία κλήσης και εισαγωγείς σε κάθε πακέτο του ενιαίου αποθετηρίου, όχι μόνο σε αυτό που είναι ανοιχτό αυτή τη στιγμή.
- **Με επίγνωση κλάδου**: Το Maguyva βλέπει την έκδοση του κώδικα που επεξεργάζεται το Cursor.
- **Συμπληρωματικό, όχι ανταγωνιστικό**: Το `.cursor/rules` συνεχίζει να κάνει τη δουλειά του. Οι αναφορές `@` συνεχίζουν να κάνουν τη δική τους. Το Maguyva καλύπτει το κενό που εκείνα δεν καλύπτουν.

> Το Cursor επεξεργάζεται το αρχείο που υποδεικνύετε.
> Το Maguyva λέει στον πράκτορα *ποιο αρχείο να υποδείξει.*

## Τρεις ροές εργασίας σε ενιαίο αποθετήριο

Διαπακετικά, διαγλωσσικά. Τεκμηριωμένο πάνω στο πραγματικό γράφημα κλήσεων, όχι στο grep του Cursor.

### 01. Βρείτε τη ροή αυθεντικοποίησης σε όλα τα πακέτα, χωρίς να καρφιτσώσετε τίποτα

```text
cursor> πού συμβαίνει η αυθεντικοποίηση σε αυτό το ενιαίο αποθετήριο;

graph::query("authentication flow")
  packages/web/src/auth/session.ts:42       middleware
  packages/api/src/auth/jwt.ts:88           επαλήθευση διακριτικού
  packages/shared/src/auth/types.ts:12      AuthContext
  packages/admin/src/auth/admin-only.ts:31  πύλη rbac

→ 4 σημεία εισόδου σε 4 πακέτα, κατατεταγμένα κατά πυκνότητα σημείων κλήσης.
[exit 0]
```

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

### 02. Βρείτε την πραγματική υλοποίηση, όχι την ψευδοϋλοποίηση δοκιμής

```text
cursor> πώς χειρίζεται η normalizePhoneNumber το E.164;

semantic::query("normalize phone E.164")
  packages/shared/util/phone.ts:88     normalizePhoneNumber()  ← πραγματική υλοποίηση
  packages/api/test/phone.spec.ts:14   jest.mock(...)          ← ψευδοϋλοποίηση
[exit 0]
```

Τα ονόματα ψεύδονται. Τα ψευδο-αντικείμενα επισκιάζουν τον πραγματικό κώδικα. Το Maguyva κατατάσσει την πραγματική υλοποίηση πάνω από την ψευδοϋλοποίηση δοκιμής, σε κάθε πακέτο.

### 03. Ελέγξτε την ακτίνα επίδρασης πριν κάνετε αναδιαμόρφωση

```text
cursor> τι καλεί το QueueDispatcher.publish σε ολόκληρο το ενιαίο αποθετήριο;

graph::callers(QueueDispatcher.publish)
  3 σε packages/billing/*
  1 σε packages/audit/*
  1 σε packages/notifications/*
  1 σε services/python-worker/*  ← διαγλωσσικά μέσω stub gRPC
[exit 0]
```

Διαπακετικά, και διαγλωσσικά όταν έχετε πολύγλωσσο αποθετήριο, τα σημεία κλήσης αναδεικνύονται άμεσα. Η διαφορά είναι τεκμηριωμένη πάνω σε πραγματικούς εισαγωγείς, όχι στο grep του Cursor.

## Ρύθμιση με το Cursor

Τρία βήματα. Επίπεδο Free: 3 αποθετήρια, Έως 50K ευρετηριασμένες γραμμές αποθετηρίου, χωρίς πιστωτική κάρτα.

### 01. Ευρετηριάστε ένα αποθετήριο στο maguyva.ai

Επιλέξτε το ενιαίο αποθετήριο όπου η έλλειψη πλαισίου σας έχει δυσκολέψει περισσότερο.

### 02. Προσθέστε το Maguyva ως διακομιστή MCP στις ρυθμίσεις του Cursor

`~/.cursor/mcp.json`

```json
{
  "mcpServers": {
    "maguyva": {
      "url": "https://maguyva.tools/mcp",
      "headers": {
        "Authorization": "Bearer ${env:MAGUYVA_API_KEY}"
      }
    }
  }
}
```

### 03. Κάντε μία ερώτηση της οποίας την απάντηση ήδη γνωρίζετε

Μην ξεκινήσετε με ολόκληρη την εταιρεία σας. Ξεκινήστε με ένα αποθετήριο και μία επαληθεύσιμη ερώτηση, όπως «τι καλεί το `formatInvoice` σε όλα τα πακέτα;»

## Ευρετηριάστε ένα αποθετήριο που ήδη γνωρίζετε.

Δοκιμάστε μία ερώτηση της οποίας την απάντηση μπορείτε να επαληθεύσετε.
