Μετάβαση στο περιεχόμενο
SitePilot
EN

SitePilot για αρχάριους

Από την πρώτη σύνδεση σε μια ελεγχόμενη ροή εργασίας WordPress

Αυτός ο οδηγός ξεκινά με μια καθορισμένη διαδρομή setup για ανθρώπους και agents και μετά εξηγεί τους ελέγχους με απλά λόγια. Ξεκίνα μόνο με ανάγνωση και προχώρησε σε staged αλλαγές μόνο όταν κατανοείς το αποτέλεσμα.

Ξεκίνα από το setup contract
01

Αν δώσεις αυτόν τον οδηγό σε agent

Δώσε ακριβές client και απαίτησε μία διαδρομή εγκατάστασης με ορατά checkpoints.

Ο agent πρέπει πρώτα να ονομάσει το environment όπου εκτελείται, το ακριβές MCP client που θα ρυθμίσει και τη διαδρομή που επέλεξε από το επόμενο κεφάλαιο. Δεν πρέπει να συμπεράνει το target client από το προϊόν chat ή από files που έτυχε να βρει.

Το ChatGPT web και τα cloud tasks δεν διαβάζουν τοπικά configurations των Codex, Cursor, Claude, Antigravity, Windsurf ή Claude Desktop. Αν ο agent δεν έχει πρόσβαση στο τοπικό target client και στο configuration του, πρέπει να σταματήσει και να σου παραδώσει τα βήματα αντί να ισχυριστεί ότι το setup ολοκληρώθηκε.

  • Μία προσπάθεια χρησιμοποιεί ένα transport. Μια remote προσπάθεια δεν αλλάζει σε local profile μέσα στο ίδιο session.
  • Η επισκευή environment είναι έξω από το SitePilot setup. Αν λείπει απαιτούμενο executable, ο agent αναφέρει το όριο και σταματά.
  • Χωρίς custom login scripts, global npm installs, αντιγραφή tokens ή δεύτερα χειροκίνητα server entries.
  • Ο άνθρωπος ολοκληρώνει το browser sign-in και το authorization. Ο agent δεν ζητά WordPress password ή token στο chat.
  • Το setup δεν ολοκληρώνεται όταν γράφεται ένα file. Ολοκληρώνεται όταν το target client εμφανίζει τον server, το authentication πετυχαίνει και μία περιορισμένη επιθεώρηση επιστρέφει site:read.
Set up SitePilot MCP for this project.
WordPress site: https://your-site.example
Target MCP client: <exact client name>

Follow only the matching path in this guide. First report whether you are running locally or in a hosted chat, the exact client you will configure, and the selected path. Do not repair Node or npm, switch between remote and local transport, create helper scripts, or edit a second configuration location. Stop for any WordPress or OAuth approval so I can complete it in the browser. After configuration, use the client's own MCP status command or panel. Do not call a SitePilot tool until the server is listed and authenticated. Then call sitepilot-inspect-site exactly once and report the versions, authentication strategy, and granted scopes.
02

Τι είναι το SitePilot

Μια ελεγχόμενη γέφυρα ανάμεσα σε ένα AI coding client και ένα WordPress site.

Το coding client μπορεί να ζητήσει από το SitePilot να επιθεωρήσει το site, να ετοιμάσει ένα τυποποιημένο plan, να εκτελέσει μια εγκεκριμένη αλλαγή, να ελέγξει την κατάστασή της ή να επαναφέρει υποστηριζόμενη εργασία. Το WordPress παραμένει η αρχή ελέγχου για κάθε αίτημα.

Το SitePilot δεν είναι remote desktop και δεν δίνει shell στο μοντέλο. Εκθέτει έναν καθορισμένο κατάλογο ενεργειών αντί για αυθαίρετη PHP, JavaScript, SQL, WP-CLI, secrets, wp-config.php ή πρόσβαση στο filesystem.

  • Το WordPress plugin εκθέτει τα tools και εφαρμόζει την πολιτική.
  • Ο δημόσιος npm adapter συνδέει υποστηριζόμενα coding clients χωρίς credentials στο project configuration.
  • Τα scopes περιορίζουν τι μπορεί να ζητήσει ένα credential.
  • WordPress capabilities, risk tiers, approvals, version checks, audit events και rollback data προσθέτουν ξεχωριστούς ελέγχους.
03

Τι χρειάζεσαι

Προετοίμασε το WordPress και τον υπολογιστή πριν συνδέσεις client.

Το WordPress plugin διανέμεται μέσω του ιδιωτικού SitePilot update channel. Ζήτησε το εγκεκριμένο ZIP από τον ιδιοκτήτη του site ή ζήτησε από administrator να το εγκαταστήσει. Αυτός ο δημόσιος οδηγός δεν αποκαλύπτει το ιδιωτικό update URL.

Μετά την ενεργοποίηση, άνοιξε το SitePilot στο WordPress και έλεγξε τα tabs Status και Connections. Το Dashboard πρέπει να εμφανίζεται ακριβώς πάνω από το Playbooks στο SitePilot menu.

  • Ένα HTTPS WordPress site με ενεργό SitePilot MCP 0.4.16 ή νεότερο.
  • Έναν WordPress λογαριασμό που μπορεί να εγκρίνει Application Password, ή ένα υποστηριζόμενο client που ολοκληρώνει native OAuth.
  • Node.js 22 ή νεότερο μόνο όταν επιλέξεις τον local sitepilot-mcp adapter ή τον Antigravity config generator.
  • Ένα υποστηριζόμενο client: Claude Code, Codex, Cursor, Antigravity CLI, Antigravity IDE, Windsurf ή Claude Desktop.
  • Έναν νέο κενό project φάκελο για την πρώτη σύνδεση.
04

Επίλεξε μία διαδρομή client

Χρησιμοποίησε το client-native remote flow όπου έχει επαληθευτεί ή το local adapter path. Μην τα συνδυάζεις.

Τα ώριμα MCP projects δημοσιεύουν διαφορετικά βήματα add, authenticate και list για κάθε host, επειδή κάθε client έχει διαφορετικό configuration scope και reload behavior. Το SitePilot ακολουθεί αυτό το πρότυπο εδώ. Αντικατάστησε το example origin με το HTTPS origin του WordPress site.

Codex, Claude Code και Antigravity IDE έχουν ξεχωριστές remote OAuth οδηγίες παρακάτω. Η διορθωμένη read-only διαδικασία του Codex ολοκλήρωσε πραγματικό retest στις 2026-09-04. Cursor, Windsurf, Antigravity CLI και Claude Desktop συνεχίζουν με τα live-verified local adapter κεφάλαια παρακάτω.

Codex: διορθωμένη ροή, καταγεγραμμένο live retest

Codex native remote OAuth

Μείνε στο native remote OAuth. Μη χρησιμοποιήσεις codex mcp add για αυτό το read-only setup: μπορεί να ξεκινήσει αμέσως ευρύ OAuth request πριν εκτελεστεί το scoped login. Αποθήκευσε πρώτα disabled entry, κάνε explicit authentication και μετά ενεργοποίησέ το. Δεν χρειάζεται npm adapter.

Βήμα 1, αρχείο configuration, όχι terminal command: ζήτησε από τον τοπικό agent να κρατήσει backup και να επεξεργαστεί το ενεργό Codex home config.toml (συνήθως ~/.codex/config.toml ή, αν έχει οριστεί CODEX_HOME, το config.toml εκεί). Πρόσθεσε ή ενημέρωσε μόνο το παρακάτω sitepilot table, αντικαθιστώντας το URL και διατηρώντας τις άλλες ρυθμίσεις. Κράτησε enabled = false. Μη δημιουργήσεις δεύτερο project entry. Αν υπάρχει ήδη project-level sitepilot entry ή παλιό OAuth credential, σταμάτα και επίλυσέ το πριν το νέο setup. Μην επικολλήσεις όλο το config ή credentials στο chat.

[mcp_servers.sitepilot]
url = "https://your-site.example/wp-json/sitepilot-mcp/v2/mcp"
enabled = false

Βήμα 2, τοπικό terminal: επιβεβαίωσε ότι εμφανίζει το ακριβές /wp-json/sitepilot-mcp/v2/mcp URL και enabled: false πριν συνεχίσεις. Το disabled σε αυτό το στάδιο είναι σκόπιμο.

codex mcp get sitepilot --json

Βήμα 3, explicit login: χρησιμοποίησε αυτή την εντολή, όχι το γενικό Authenticate της εφαρμογής. Μόνο ο άνθρωπος εγκρίνει στον browser, και μόνο αν το consent δείχνει αποκλειστικά site:read. Για ευρύτερα scopes κάνε Deny, ακύρωσε το login που περιμένει και άφησε το entry disabled. Μην αλλάξεις το authorization URL. Περίμενε επιβεβαίωση επιτυχούς login στο terminal.

codex mcp login sitepilot --scopes site:read

Βήμα 4, μόνο μετά από επιτυχές read-only login: άλλαξε enabled = false σε enabled = true στο ίδιο config table και μετά τρέξε αυτή την εντολή. Κάνε restart ή reload το target client, άνοιξε νέο τοπικό task, χρησιμοποίησε /mcp και απαίτησε authenticated tool discovery πριν από τη μοναδική επιθεώρηση του κεφαλαίου 07.

codex mcp list
  • Αν δεν υποστηρίζεται --scopes, σταμάτα. Μην αφαιρέσεις το flag και μην αλλάξεις transport.
  • Για μελλοντικό reauthentication, απενεργοποίησε το entry και επανάλαβε login με --scopes site:read. Το CLI flag ισχύει για εκείνο το login, όχι για κάθε μελλοντική OAuth προσπάθεια. Μη χρησιμοποιήσεις unscoped login ή το γενικό Authenticate για αυτή τη read-only διαδικασία.
  • Η προηγούμενη διαδικασία add και μετά login απέτυχε σε πραγματικό user test ζητώντας εννέα scopes. Στις 2026-09-04 η διορθωμένη ροή ολοκλήρωσε πραγματικό read-only consent και inspection σε plugin 0.4.10. Το registered ceiling και το granted scope ήταν και τα δύο site:read.

Προτεινόμενο για Claude Code

Claude Code native remote OAuth

Άφησε το Claude Code να διαχειριστεί το remote server entry και το OAuth credential.

claude mcp add --transport http sitepilot https://your-site.example/wp-json/sitepilot-mcp/v2/mcp
claude mcp list
  • Μέσα στο Claude Code, χρησιμοποίησε /mcp και ξεκίνησε authentication για το sitepilot.
  • Η WordPress consent σελίδα πρέπει να εμφανίζει μόνο site:read.
  • Χρησιμοποίησε claude mcp get sitepilot αν ο server λείπει ή δεν είσαι βέβαιος για το αποθηκευμένο URL.

Antigravity IDE remote OAuth

Antigravity IDE

Δημιούργησε το documented serverUrl entry και μετά κάνε authentication μέσα από τα IDE settings.

npx -y sitepilot-mcp@0.1.6 init --client antigravity-ide --remote --url https://your-site.example
  • Κάνε refresh τα MCP servers, ξεκίνησε νέο Agent session και διάλεξε Authenticate στα Settings και Customizations.
  • Η WordPress consent σελίδα πρέπει να εμφανίζει μόνο site:read. Μην προσθέσεις oauth object χειροκίνητα.
  • Το Antigravity CLI remote OAuth μένει έξω από αυτό το beginner path μέχρι να καταγραφεί end-to-end run. Χρησιμοποίησε το local adapter path με client value agy.

Local adapter

Cursor, Windsurf, Antigravity CLI ή Claude Desktop

Συνέχισε με τα επόμενα δύο κεφάλαια για να δημιουργήσεις ένα read-only local profile και ένα ακριβές client configuration.

npx --yes sitepilot-mcp@0.1.6 --version
  • Το version probe πρέπει να εμφανίσει 0.1.6. Αν δεν το κάνει, σταμάτησε και ανάφερε το ακριβές output αντί να επισκευάσεις το environment μέσα σε αυτό το setup.
  • Το local path χρησιμοποιεί WordPress Application Password flow και αποθηκεύει το profile έξω από το project configuration.
  • Μη δημιουργήσεις και remote entry για το ίδιο client στην ίδια προσπάθεια.
05

Μόνο local adapter: δημιούργησε read-only profile

Παράλειψε αυτό το κεφάλαιο αν ολοκλήρωσες remote OAuth path.

Άνοιξε terminal στον κενό project φάκελο. Αντικατάστησε το example URL με το WordPress site και εκτέλεσε αυτή την ακριβή one-line εντολή. Μην τη χρησιμοποιήσεις αφού προσθέσεις τον ίδιο server μέσω native remote OAuth.

  • Ο browser ανοίγει τη WordPress Application Password authorization σελίδα. Κάνε sign in εκεί αν ζητηθεί.
  • Ενέκρινε το Application Password request. Αν δεις OAuth consent σελίδα με λίστα scopes, σταμάτησε επειδή βρίσκεσαι στο remote path.
  • Επίστρεψε στο terminal και επιβεβαίωσε ότι το αποθηκευμένο profile αναφέρει μόνο site:read.
  • Σταμάτησε αν εμφανιστούν περισσότερα scopes από όσα ζήτησες.
npx -y sitepilot-mcp@0.1.6 login --url https://your-site.example --scopes site:read --profile my-site --label my-site
06

Μόνο local adapter: ρύθμισε ένα client

Δημιούργησε ένα client configuration από το profile και μετά σταμάτησε για το απαιτούμενο reload.

Το Cursor είναι το πρώτο local παράδειγμα. Εκτέλεσε την εντολή στον ίδιο project φάκελο και μετά διάλεξε Developer: Reload Window από το Command Palette. Αν χρησιμοποιείς άλλο local client, αντικατάστησε το cursor με ακριβώς μία τιμή από τη λίστα.

  • Claude Code: αντικατάστησε το cursor με claude-code.
  • Codex: αντικατάστησε το cursor με codex και κάνε trust το project ώστε να φορτωθεί το project-scoped configuration.
  • Antigravity CLI: χρησιμοποίησε agy. Antigravity IDE: χρησιμοποίησε antigravity-ide.
  • Windsurf: χρησιμοποίησε windsurf. Claude Desktop: χρησιμοποίησε claude-desktop.
  • Μη χρησιμοποιήσεις major ή all σε πρώτο setup. Η εγγραφή πολλών client configurations κάνει τις αποτυχίες ασαφείς.
npx -y sitepilot-mcp@0.1.6 init --client cursor --profile my-site
07

Κάνε μία ελεγχόμενη επιθεώρηση

Απόδειξε ότι η σύνδεση λειτουργεί πριν ζητήσεις οτιδήποτε άλλο.

Πρώτα χρησιμοποίησε το MCP list, status command ή settings panel του target client. Συνέχισε μόνο όταν το sitepilot είναι present, enabled και authenticated. Μετά άνοιξε νέο agent chat και χρησιμοποίησε ακριβώς αυτό το prompt.

  • Το tool call ολοκληρώνεται με επιτυχία.
  • Το client εμφάνισε το sitepilot πριν από το tool call. Ένα generated file μόνο του δεν είναι απόδειξη λειτουργικού setup.
  • Η έκδοση SitePilot plugin είναι 0.4.16 ή νεότερη.
  • Το authentication strategy είναι app_password ή oauth, ανάλογα με τον τρόπο σύνδεσης.
  • Τα granted scopes περιέχουν μόνο site:read.
Use the SitePilot MCP tool sitepilot-inspect-site exactly once. Do not call any other tool. Report the WordPress version, SitePilot plugin version, authentication strategy, and granted scopes from that single result.
08

Κατανόησε scopes και risk tiers

Το scope δίνει μια κατηγορία εξουσιοδότησης. Το risk tier καθορίζει αν χρειάζεται ανθρώπινη έγκριση.

Το Tier 0 είναι read-only. Το Tier 1 κάνει staging ασφαλούς εργασίας όπως ένα draft. Το Tier 2 αλλάζει ευαίσθητη κατάσταση και απαιτεί approval. Το Tier 3 είναι υψηλού κινδύνου και απαιτεί νέο administrator approval.

Ένα ευρύ scope δεν παρακάμπτει WordPress capabilities ή approvals. Απλώς κάνει την κατηγορία operation επιλέξιμη για τους επόμενους ελέγχους.

  • site:read: μόνο επιθεώρηση και capability discovery.
  • content:write: drafts, ενημέρωση περιεχομένου, publishing, trash και deletion, πάντα με το αντίστοιχο risk tier.
  • media:write: staged uploads στο Media Library και bounded imports.
  • design:write: υποστηριζόμενες builder, menu, template και site-design ενέργειες.
  • commerce:write: υποστηριζόμενες WooCommerce ενέργειες για τιμές, stock, orders και refunds.
  • extensions:manage, core:update, users:write και security:manage: υψηλού κινδύνου administrative operations.
09

Μόνο local adapter: Ετοίμασε το πρώτο ασφαλές draft

Διεύρυνε σκόπιμα την εξουσιοδότηση, κάνε ξανά inspect και σταμάτησε μετά το planning.

Τα remote paths για Codex, Claude Code και Antigravity IDE ολοκληρώνονται στο read-only inspection σε αυτόν τον οδηγό. Παράλειψε αυτό το κεφάλαιο αν ακολούθησες οποιοδήποτε remote path και μην αναμείξεις αυτές τις local-adapter commands με το remote setup.

Όταν είσαι έτοιμος να δοκιμάσεις write workflow, δημιούργησε ξεχωριστό profile μόνο με site:read και content:write. Κάνε την πρώτη δοκιμή σε disposable ή staging site.

  • Επιβεβαίωσε ότι το plan δημιουργεί draft και όχι published page.
  • Επιβεβαίωσε target, title, content, scope και risk tier.
  • Μην κάνεις execute αν το plan περιέχει απροσδόκητη δεύτερη action.
  • Ζήτησε execution μόνο αφού το dry-run diff συμφωνεί με την πρόθεσή σου.
npx -y sitepilot-mcp@0.1.6 login --url https://your-site.example --scopes site:read,content:write --profile my-site-drafts --label my-site-drafts
npx -y sitepilot-mcp@0.1.6 init --client cursor --profile my-site-drafts
Inspect the site once. Then describe the content.create_draft operation and prepare a plan for a draft page titled SitePilot Test Draft. Do not execute the plan. Show me the risk tier, required scope, target, expected version, and complete diff.
10

Ενέκρινε ευαίσθητη εργασία και κατανόησε το rollback

Tier 2 και Tier 3 plans περιμένουν μέχρι WordPress user να εγκρίνει το ακριβές change hash.

Όταν ένα plan αναφέρει awaiting approval, άνοιξε WordPress, διάλεξε SitePilot και μετά Approvals. Έλεγξε target, actions, diff, risk tier και expiry πριν την έγκριση.

Το approval συνδέεται με τις ακριβείς planned actions. Αν αλλάξει το plan, το approval δεν ταιριάζει πλέον. Το execution αποτυγχάνει επίσης αν το site version άλλαξε μετά το planning.

  • Μην εγκρίνεις αλλαγή που δεν μπορείς να εξηγήσεις.
  • Απόρριψε plans με απροσδόκητα operations, targets ή scopes.
  • Μετά το execution, ζήτησε sitepilot-get-change-status και έλεγξε το αποτέλεσμα στο WordPress Change History.
  • Rollback υπάρχει μόνο όπου το SitePilot κράτησε το απαραίτητο snapshot και compensation data.
  • Partial rollback αναφέρεται ως failed, ποτέ ως success.
11

Γνώρισε τις υποστηριζόμενες επιφάνειες

Το inspectable δεν σημαίνει πάντα constructible ή writable.

Χρησιμοποίησε sitepilot-search-capabilities και sitepilot-describe-operations πριν σχεδιάσεις άγνωστη εργασία. Για builder changes, κάνε πρώτα inspect το target structure και έλεγξε το staged preview πριν την έγκριση.

  • Gutenberg: inspection, staged changes, publishing approval και supported rollback.
  • Elementor 3: classic document inspection, construction, bounded edits, approval και rollback.
  • Elementor 4 mixed documents: per-region inspection και γνωστές typed-setting updates μόνο σε υπάρχοντα atomic elements. Atomic construction και structural edits παραμένουν unsupported.
  • Enfold ALB: bounded εργασία σε calibrated documents και inspected scalar colour ή typography settings. Uncalibrated nested Enfold 7.x structures παραμένουν εργασία administrator.
  • WooCommerce: guarded product, stock, price, order και refund operations με το κατάλληλο scope και approval tier.
  • Media: bounded staging για JPEG, PNG, WebP και PDF. Το SitePilot δεν διαθέτει ακόμη image-optimization pipeline.
12

Αντιμετώπισε προβλήματα χωρίς να χαλαρώσεις την ασφάλεια

Οι περισσότερες αποτυχίες δείχνουν ποια προϋπόθεση λείπει. Διόρθωσέ την αντί να διευρύνεις τυφλά την πρόσβαση.

  • Ο server δεν εμφανίζεται: σταμάτησε πριν το authentication. Χρησιμοποίησε codex mcp list, claude mcp list, /mcp ή τα MCP settings του target client για να επιβεβαιώσεις ότι το entry υπάρχει σε αυτό ακριβώς το client.
  • Local server missing μετά το init: επιβεβαίωσε ότι έτρεξες init στον project φάκελο, κάνε reload το client και έλεγξε αν χρειάζεται project trust.
  • Unauthorized ή Auth Needed: οι Codex remote χρήστες απενεργοποιούν το entry και επαναλαμβάνουν το scoped login του κεφαλαίου 04, όχι το γενικό Authenticate. Οι άλλοι remote clients ακολουθούν τα δικά τους βήματα του κεφαλαίου 04. Οι local-adapter χρήστες επαναλαμβάνουν login για το σωστό profile. Μην αλλάξεις transport ως repair.
  • Λάθος authorization page ή διπλά sitepilot entries: κάνε deny ή cancel, αφαίρεσε το stale entry στο target client, ανάκλησε το stale WordPress connection και ξεκίνησε μία documented διαδρομή από την αρχή.
  • Ο browser δεν άνοιξε: κράτησε την ακριβή εντολή και το terminal output και σταμάτησε. Μη δημιουργήσεις custom login script και μην αντιγράψεις credential στο configuration.
  • Insufficient scope: έλεγξε το required scope του operation. Δημιούργησε purpose-specific profile αντί να δώσεις όλα τα scopes.
  • Approval required: έλεγξε το pending item στο SitePilot → Approvals. Μην ζητήσεις από τον agent να το παρακάμψει.
  • Version mismatch: κάνε ξανά inspect και δημιούργησε νέο plan για το τρέχον site version.
  • Operation blocked ή unsupported: ζήτησε από το sitepilot-describe-operations το τρέχον contract και διάλεξε supported workflow.
  • Provider ή hosting outage: έλεγξε το WordPress URL στον browser και περίμενε την αποκατάσταση. Μην αλλάξεις το MCP configuration λόγω προσωρινού outage.
13

Αποσύνδεση και cleanup

Αφαίρεσε local profiles και ανάκλησε server-side credentials όταν τελειώσει test ή project.

  • Στο WordPress, άνοιξε το σχετικό user profile και ανάκλησε το αντίστοιχο SitePilot MCP Application Password.
  • Για OAuth, άνοιξε SitePilot → Connections και ανάκλησε το client connection.
  • Διέγραψε disposable project folders μόνο αφού κρατήσεις το non-secret evidence που χρειάζεσαι.
  • Μετά το reload, επιβεβαίωσε ότι το client δεν εμφανίζει πλέον τον αφαιρεμένο SitePilot server.
npx -y sitepilot-mcp@0.1.6 logout --profile my-site
npx -y sitepilot-mcp@0.1.6 logout --profile my-site-drafts
14

Γλωσσάρι με απλά λόγια

Οι λίγοι όροι που θα συναντήσεις σε όλο το SitePilot.

  • MCP: το protocol που χρησιμοποιεί ένα coding client για να ανακαλύψει και να καλέσει SitePilot tools.
  • Profile: μια τοπική ονομασμένη σύνδεση SitePilot με credential έξω από το project configuration.
  • Scope: κατηγορία εξουσιοδότησης που δίνεται σε ένα credential.
  • Operation: μία typed WordPress action με καθορισμένο input contract.
  • Plan ή change set: ένα immutable dry run με τις intended actions και το diff τους.
  • Risk tier: το policy level που καθορίζει πόσο review και approval χρειάζεται μια action.
  • Expected version: το site-state digest που εμποδίζει stale plans να εκτελεστούν.
  • Approval: μια expiring WordPress-side απόφαση δεμένη με το ακριβές change hash.
  • Rollback: supported reverse operation βασισμένο σε retained snapshot και compensation data.

Χρησιμοποίησε τον οδηγό ως operating checklist

Κράτησε τη σύνδεση read-only μέχρι να κατανοήσεις την πρώτη επιθεώρηση. Όταν διευρύνεις την εξουσιοδότηση, χρησιμοποίησε ξεχωριστό profile, κάνε inspect πριν το planning, έλεγξε όλο το diff και ανάκλησε την πρόσβαση στο τέλος.