For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Navegación principal
Codex

Codex use case

Crea la estructura base de una app para Mac

Usa Codex para crear la estructura base de una app SwiftUI nativa para Mac, con una barra lateral, un panel de detalles, un inspector, comandos y Configuración.

Difficulty Avanzado
Time horizon 1 h

Usa Codex y el complemento Build macOS Apps para convertir una idea de app en una app de escritorio nativa basada en NavigationSplitView, mantener estable la selección de la barra lateral, agregar menús, barras de herramientas y atajos de teclado, y trasladar las preferencias a una escena dedicada de Settings.

Ideal para

  • Ideas nuevas de apps para Mac o conceptos pensados primero para iPad o Web que necesitan una verdadera estructura de escritorio con navegación persistente, menús, barras de herramientas y atajos de teclado
  • Herramientas de edición, biblioteca, administración o revisión en las que la selección de una barra lateral determina el contenido de un panel de detalles y un inspector presenta metadatos o acciones secundarias
  • Apps para Mac cuya configuración debe estar en una ventana dedicada de preferencias, en vez de en otra pantalla insertada en la pila de contenido principal

Contents

    ← Todos los casos de uso

    Crea la estructura base de una app para Mac

    Usa Codex para crear la estructura base de una app SwiftUI nativa para Mac, con una barra lateral, un panel de detalles, un inspector, comandos y Configuración.

    Usa Codex y el complemento Build macOS Apps para convertir una idea de app en una app de escritorio nativa basada en NavigationSplitView, mantener estable la selección de la barra lateral, agregar menús, barras de herramientas y atajos de teclado, y trasladar las preferencias a una escena dedicada de Settings.

    Avanzado
    1 h

    Usa Codex y el complemento Build macOS Apps para convertir una idea de app en una app de escritorio nativa basada en NavigationSplitView, mantener estable la selección de la barra lateral, agregar menús, barras de herramientas y atajos de teclado, y trasladar las preferencias a una escena dedicada de Settings.

    Avanzado
    1 h

    Ideal para

    • Ideas nuevas de apps para Mac o conceptos pensados primero para iPad o Web que necesitan una verdadera estructura de escritorio con navegación persistente, menús, barras de herramientas y atajos de teclado
    • Herramientas de edición, biblioteca, administración o revisión en las que la selección de una barra lateral determina el contenido de un panel de detalles y un inspector presenta metadatos o acciones secundarias
    • Apps para Mac cuya configuración debe estar en una ventana dedicada de preferencias, en vez de en otra pantalla insertada en la pila de contenido principal

    Habilidades y complementos

    • Usa las habilidades de patrones de SwiftUI para macOS, administración de ventanas, interoperabilidad con AppKit y compilación y ejecución para crear diseños con barra lateral, panel de detalles e inspector, integrar menús y opciones de configuración, y validar la app en un ciclo que priorice la línea de comandos.
    Skill Why use it
    Build macOS Apps Usa las habilidades de patrones de SwiftUI para macOS, administración de ventanas, interoperabilidad con AppKit y compilación y ejecución para crear diseños con barra lateral, panel de detalles e inspector, integrar menús y opciones de configuración, y validar la app en un ciclo que priorice la línea de comandos.

    Prompt inicial

    Usa el complemento Build macOS Apps para convertir [describe your app idea] en la estructura base de una app SwiftUI nativa para Mac, con una barra lateral, un panel de detalles, un inspector, comandos y Configuración. Restricciones: - elige primero el modelo de escenas. Prefiere `WindowGroup` para la ventana principal y agrega una escena dedicada de `Settings` para las preferencias. - Crea la interfaz principal en torno a `NavigationSplitView`, con un estado de selección explícito, una lista nativa `.sidebar`, un área de detalles y un panel `inspector(isPresented:)` para los metadatos o controles secundarios. - Mantén las filas de la barra lateral ligeras y nativas: un ícono, una línea de título y, como máximo, una línea secundaria breve. No conviertas cada fila en una tarjeta personalizada grande a menos que exista una razón de peso relacionada con el producto. - Ofrece las acciones importantes mediante `commands` y `CommandMenu` a nivel de escena, botones de la barra de herramientas y atajos de teclado. No ocultes tras gestos la única vía de acceso a una acción crítica. - Usa `@SceneStorage` para el estado de la interfaz específico de la ventana, `@AppStorage` para las preferencias y vinculaciones de selección explícitas administradas por la vista contenedora para coordinar sidebar/detail. - Prefiere los materiales del sistema, los colores semánticos y los fondos estándar de la barra lateral. Agrega estilos personalizados solo a las tarjetas de contenido del panel de detalles o del inspector cuando sea necesario. - Usa un puente acotado de AppKit solo si SwiftUI no puede expresar claramente un comportamiento específico de escritorio. - Crea o actualiza `script/build_and_run.sh`, ejecuta la comprobación mínima útil de build/run e indícame los comandos exactos que usaste. Entrega: - la estructura de escenas y las vistas principales de sidebar/detail/inspector - la configuración del menú, la barra de herramientas y los atajos de teclado - la escena de Configuración y el modelo de estado de las preferencias - cualquier puente de AppKit que hayas agregado y por qué fue necesario - los pasos de validación de build/run y cualquier paso adicional que recomiendes para la UX de escritorio
    Usa el complemento Build macOS Apps para convertir [describe your app idea] en la estructura base de una app SwiftUI nativa para Mac, con una barra lateral, un panel de detalles, un inspector, comandos y Configuración. Restricciones: - elige primero el modelo de escenas. Prefiere `WindowGroup` para la ventana principal y agrega una escena dedicada de `Settings` para las preferencias. - Crea la interfaz principal en torno a `NavigationSplitView`, con un estado de selección explícito, una lista nativa `.sidebar`, un área de detalles y un panel `inspector(isPresented:)` para los metadatos o controles secundarios. - Mantén las filas de la barra lateral ligeras y nativas: un ícono, una línea de título y, como máximo, una línea secundaria breve. No conviertas cada fila en una tarjeta personalizada grande a menos que exista una razón de peso relacionada con el producto. - Ofrece las acciones importantes mediante `commands` y `CommandMenu` a nivel de escena, botones de la barra de herramientas y atajos de teclado. No ocultes tras gestos la única vía de acceso a una acción crítica. - Usa `@SceneStorage` para el estado de la interfaz específico de la ventana, `@AppStorage` para las preferencias y vinculaciones de selección explícitas administradas por la vista contenedora para coordinar sidebar/detail. - Prefiere los materiales del sistema, los colores semánticos y los fondos estándar de la barra lateral. Agrega estilos personalizados solo a las tarjetas de contenido del panel de detalles o del inspector cuando sea necesario. - Usa un puente acotado de AppKit solo si SwiftUI no puede expresar claramente un comportamiento específico de escritorio. - Crea o actualiza `script/build_and_run.sh`, ejecuta la comprobación mínima útil de build/run e indícame los comandos exactos que usaste. Entrega: - la estructura de escenas y las vistas principales de sidebar/detail/inspector - la configuración del menú, la barra de herramientas y los atajos de teclado - la escena de Configuración y el modelo de estado de las preferencias - cualquier puente de AppKit que hayas agregado y por qué fue necesario - los pasos de validación de build/run y cualquier paso adicional que recomiendes para la UX de escritorio

    Comienza con el modelo de escenas de Mac

    Este caso de uso permite convertir una idea de app en la estructura base de una app para Mac que parezca diseñada para el escritorio, no como una adaptación de una pila pensada primero para interfaces táctiles. Pídele a Codex que elija primero el modelo de escenas y luego diseñe la ventana principal en torno a una selección estable de la barra lateral, un área de detalles y un inspector para controles o metadatos secundarios.

    Estructura base de una app nativa para Mac con barra lateral y panel de detalles, un elemento seleccionado en la barra lateral y contenido en el panel de detalles

    Usa el complemento Build macOS Apps cuando quieras que Codex aplique esa estructura de escritorio y mantenga el ciclo de compilación y ejecución centrado en la línea de comandos. Su habilidad de patrones de SwiftUI para macOS es adecuada para diseñar escenas, barras laterales, inspectores, comandos y opciones de configuración, además de pequeños puentes de AppKit cuando SwiftUI no puede expresar claramente un comportamiento específico de Mac.

    Crea una barra lateral, un panel de detalles y un inspector

    Prefiere NavigationSplitView cuando la función se beneficie de una navegación persistente y una selección estable. Mantén las filas de la barra lateral nativas y ligeras, usa fondos del sistema para la barra lateral y reserva las tarjetas personalizadas o los metadatos densos para el panel de detalles o el inspector.

    struct LibraryRootView: View {
      @SceneStorage("LibraryRootView.selection") private var selection: Item.ID?
      @SceneStorage("LibraryRootView.showInspector") private var showInspector = true
    
      var body: some View {
        NavigationSplitView {
          List(selection: $selection) {
            ForEach(items) { item in
              Label(item.title, systemImage: item.systemImage)
                .tag(item.id)
            }
          }
          .listStyle(.sidebar)
          .navigationTitle("Library")
        } detail: {
          ItemDetailView(selection: selection)
            .inspector(isPresented: $showInspector) {
              ItemInspectorView(selection: selection)
            }
        }
      }
    }

    Si la app necesita dimensiones inusuales en la vista dividida, coordinación de ventanas a bajo nivel o un comportamiento personalizado de la cadena de respondedores, pídele a Codex que mantenga intacta la estructura de SwiftUI y agregue solo el puente de AppKit más pequeño necesario para resolver esa limitación.

    Coloca los comandos, las barras de herramientas y los atajos en la capa de escritorio

    Los usuarios de Mac deben poder encontrar acciones importantes en la barra de menús, la barra de herramientas y los atajos de teclado. Pídele a Codex que vincule los commands a nivel de escena, los elementos de menú sensibles al contexto y los botones de la barra de herramientas con las mismas acciones de la app, para que los usuarios de escritorio no tengan que buscar controles disponibles solo mediante gestos.

    @main
    struct LibraryApp: App {
      var body: some Scene {
        WindowGroup {
          LibraryRootView()
        }
        .commands {
          CommandMenu("Library") {
            Button("New Item") {
              // Create a new item.
            }
            .keyboardShortcut("n")
    
            Button("Toggle Inspector") {
              // Route this command to the focused window or selected item state.
            }
            .keyboardShortcut("i", modifiers: [.command, .option])
          }
        }
    
        Settings {
          LibrarySettingsView()
        }
      }
    }

    Usa FocusedValue, el estado de la escena o un estado de selección explícito cuando un comando deba aplicarse al elemento que se muestra actualmente en el panel de detalles. Si un atajo fuera a registrarse en varios lugares, pídele a Codex que centralice su administración para que la app tenga una única ruta clara para el comando.

    Mantén las preferencias en Settings

    Para las preferencias de la app, usa una escena dedicada de Settings y conserva con @AppStorage las opciones del usuario que deban persistir. Esto suele ser más adecuado en Mac que insertar una pantalla de configuración en la pila de navegación de la ventana de contenido principal.

    struct LibrarySettingsView: View {
      @AppStorage("showItemMetadata") private var showItemMetadata = true
    
      var body: some View {
        TabView {
          Form {
            Toggle("Show Item Metadata", isOn: $showItemMetadata)
          }
          .tabItem { Label("General", systemImage: "gearshape") }
        }
        .frame(width: 460, height: 260)
        .scenePadding()
      }
    }

    Describe el concepto de la app en el prompt y luego valida la estructura base

    Esta página funciona mejor cuando tu prompt especifica el concepto de la app, los objetos de contenido principales y las acciones principales, y luego le pide a Codex que primero cree la estructura de escritorio en torno a ese flujo de trabajo. Haz que el agente ejecute una comprobación breve de compilación y ejecución y resuma la estructura de escenas, la conexión de comandos, la propiedad del estado y cualquier caso especial que haya tenido que resolver con un puente de AppKit.

    Consejos prácticos

    Mantén nativa la barra lateral

    Usa un ícono, una línea de título y, como máximo, una línea secundaria breve en las filas de la barra lateral. Traslada las tarjetas con más información, los contadores y los metadatos al panel de detalles o al inspector para que la lista de origen siga siendo fácil de revisar de un vistazo.

    Evita ocultar la configuración en la pila principal

    Si una preferencia de usuario afecta a toda la app, pídele a Codex que coloque ese control en Settings con @AppStorage y que proporcione un punto de acceso desde el menú de la app, en vez de crear otra pantalla de configuración en la pila de navegación.

    Reserva AppKit para necesidades puntuales del escritorio

    Si la función necesita paneles para abrir o guardar archivos, control del primer respondedor o una NSView personalizada, usa AppKit solo como una pequeña capa alrededor de un modelo de estado administrado por SwiftUI, en vez de reescribir toda la ventana con AppKit.

    Tech stack

    Need

    Estructura base de una app con vista dividida

    Default options

    NavigationSplitView, listas .sidebar e inspector(isPresented:)

    Why it's needed

    Una barra lateral persistente, un panel de detalles y un inspector se ajustan mejor a los diseños habituales de apps para Mac que la navegación apilada pensada primero para interfaces táctiles.

    Need

    Acciones y configuración de escritorio

    Default options

    commands, CommandMenu, atajos de teclado y una escena de Settings

    Why it's needed

    Las acciones de la barra de menús, los atajos y una ventana dedicada de configuración hacen que la función parezca parte de una verdadera app para Mac, en vez de una pantalla de iOS estirada para el escritorio.

    Need

    Propiedad del estado

    Default options

    @State, @SceneStorage, @AppStorage y vinculaciones de selección explícitas

    Why it's needed

    Codex puede mantener predecibles la selección de la barra lateral, la visibilidad del inspector y las preferencias del usuario sin recurrir automáticamente a un modelo de vista.

    Need

    Alternativas nativas

    Default options

    AppKit mediante puentes acotados de NSViewRepresentable o NSWindow

    Why it's needed

    Usa AppKit solo para comportamientos de la plataforma que SwiftUI no pueda expresar claramente y mantén SwiftUI como fuente de verdad del estado de la escena y la selección.

    Need Default options Why it's needed
    Estructura base de una app con vista dividida NavigationSplitView , listas .sidebar e inspector(isPresented:) Una barra lateral persistente, un panel de detalles y un inspector se ajustan mejor a los diseños habituales de apps para Mac que la navegación apilada pensada primero para interfaces táctiles.
    Acciones y configuración de escritorio commands , CommandMenu , atajos de teclado y una escena de Settings Las acciones de la barra de menús, los atajos y una ventana dedicada de configuración hacen que la función parezca parte de una verdadera app para Mac, en vez de una pantalla de iOS estirada para el escritorio.
    Propiedad del estado @State , @SceneStorage , @AppStorage y vinculaciones de selección explícitas Codex puede mantener predecibles la selección de la barra lateral, la visibilidad del inspector y las preferencias del usuario sin recurrir automáticamente a un modelo de vista.
    Alternativas nativas AppKit mediante puentes acotados de NSViewRepresentable o NSWindow Usa AppKit solo para comportamientos de la plataforma que SwiftUI no pueda expresar claramente y mantén SwiftUI como fuente de verdad del estado de la escena y la selección.

    Casos de uso relacionados