openeditor-project-setup
Original:🇺🇸 English
Translated
Inspect an existing repo and generate OpenEditor onboarding config for it. Use when Codex needs to make a project OpenEditor-compatible by inferring framework or platform from the file tree, creating or updating `.logic-editor.json`, creating `oe-swift.json` for iOS or SwiftUI projects, or explaining which config fields still need manual confirmation.
10installs
Sourcedamidina/openeditor
Added on
NPX Install
npx skill4agent add damidina/openeditor openeditor-project-setupTags
Translated version includes tags in frontmatterSKILL.md Content
View Translation Comparison →OpenEditor Project Setup
Quick Start
Use this skill to onboard an arbitrary repo into OpenEditor. The output is usually:
.logic-editor.json- for iOS or SwiftUI repos
oe-swift.json - a short explanation of what was inferred vs. what still needs confirmation
When the repo signals are sufficient, generate the file contents directly.
Do not ask the user for the or schema when the references in this skill already cover it.
.logic-editor.jsonoe-swift.jsonRead only the references you need:
- Always read references/project-config.md
- Read references/project-detection.md when inferring framework, port, or run command
- Read references/ios-config.md only for iOS or SwiftUI projects
Workflow
1. Inspect the repo first
Look for the smallest high-signal set of inputs:
package.json- lockfiles such as ,
bun.lockb,bun.lock, orpackage-lock.jsonpnpm-lock.yaml - framework folders such as ,
app/,pages/,src/,templates/layout/ - iOS signals such as ,
*.xcodeproj, and*.xcworkspace*.swift - any existing or
.logic-editor.jsonoe-swift.json
Do not invent support for frameworks that the references do not cover.
2. Infer the project type conservatively
Prefer the real parser defaults from the references over generic assumptions.
- -> port
next, run command3000ornpm run devwhen Bun lockfiles are presentbun dev - -> port
astro4321 - -> port
expo, run command8081npx expo start - -> port
react-native, run command8081ornpm startbun start - Vite React -> port
5173 - Shopify theme -> port , run command
9292shopify theme dev - iOS -> port , empty
0, plusrunCommandoe-swift.json - Unknown web repo -> default to , port
type: "unknown", run command5173npm run dev
If the evidence is mixed, explain that uncertainty instead of pretending confidence.
3. Generate the smallest correct config
Rules:
- Keep minimal unless the repo clearly supports more
.logic-editor.json - Do not add speculative routes or URL-state variants just to look smart
- If route discovery is weak, emit a single home route:
{ "path": "/", "label": "Home" }
- Preserve existing config when updating; merge carefully instead of replacing unrelated fields
- Do not invent unsupported keys
4. Only generate oe-swift.json
for real iOS projects
oe-swift.jsonWhen the repo is SwiftUI or Xcode-based:
- infer from the
schemeor.xcodeprojname when possible.xcworkspace - default simulator to
iPhone 16 Pro - infer views from obvious files
*View.swift - keep view entries simple unless the repo provides stronger signals
- do not fabricate bundle IDs, deep links, or accessibility tap metadata unless the repo exposes them
5. Explain assumptions explicitly
After the config output, include a short explanation covering:
- detected framework or platform
- chosen port and run command
- whether routes were inferred or defaulted
- whether was generated and why
oe-swift.json - which fields should be manually confirmed
6. Prefer generation over schema questions
If the repo is a supported type and the references here cover the config format:
- generate the file contents directly
- use conservative defaults when some fields are weakly signaled
- ask follow-up questions only when a missing field would make the config invalid or misleading
Do not stop with "I need the schema" for normal React, Next, Astro, Expo, React Native, Shopify, or iOS repos.
Output Rules
When the user asks for file contents, prefer this structure:
text
.logic-editor.json
```json
{ ... }oe-swift.json
json
{ ... }Notes
- ...
If the project is not iOS, omit `oe-swift.json`.
If there is already a config file, show the updated file content instead of a from-scratch template.