Skip to content

agntcy/dir-gui

gui

A new Flutter project.

Getting Started

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter development, view the online documentation, which offers tutorials, samples, guidance on mobile development, and a full API reference.

Prerequisites

  1. Flutter SDK - Install Flutter from flutter.dev
  • Verify installation: flutter doctor
  1. macOS Requirements (for macOS development):
  • Xcode - Full Xcode.app (not just Command Line Tools)
    • Install from the App Store
    • After installation, run:
      sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
      sudo xcodebuild -runFirstLaunch
  • CocoaPods - Install if not already present:
    brew install cocoapods
    # or
    sudo gem install cocoapods
  1. macOS Sandbox Configuration (required to execute external binaries):
  • The app needs to execute the MCP server binary, which requires disabling the App Sandbox for debug builds
  • Check the configuration: Open macos/Runner/DebugProfile.entitlements and verify it contains:
    <key>com.apple.security.app-sandbox</key>
    <false/>
  • If not configured or you get "Operation not permitted" errors:
    1. Open macos/Runner/DebugProfile.entitlements
    2. Ensure com.apple.security.app-sandbox is set to false (not true)
    3. The file should look like this:
      <?xml version="1.0" encoding="UTF-8"?>
      <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
      <plist version="1.0">
      <dict>
          <key>com.apple.security.app-sandbox</key>
          <false/>
          <key>com.apple.security.cs.allow-jit</key>
          <true/>
          <key>com.apple.security.network.server</key>
          <true/>
      </dict>
      </plist>
    4. After making changes, run flutter clean and rebuild the app
  1. Build the MCP server binary:
    task mcp:build

Build and Run (macOS)

Use the following command to set up the environment and run the app on macOS:

source ~/.env-testing-local && \
unset HTTP_PROXY && \
unset HTTPS_PROXY && \
export DIRECTORY_CLIENT_SERVER_ADDRESS="localhost:8888" && \
export MCP_SERVER_PATH="$PWD/../bin/mcp-server" && \
export OASF_API_VALIDATION_SCHEMA_URL="${OASF_API_VALIDATION_SCHEMA_URL:-https://schema.oasf.outshift.com}" && \
export AZURE_API_KEY="$AZURE_OPENAI_API_KEY" && \
export AZURE_ENDPOINT="$AZURE_OPENAI_ENDPOINT" && \
export AZURE_DEPLOYMENT="$AZURE_OPENAI_DEPLOYMENT_NAME" && \
flutter run -d macos --no-pub

Running Tests

To run the unit and widget tests:

flutter test

To run the MCP integration tests (which require the built MCP server binary):

  1. Ensure the MCP server is built. From the project root run:
    task mcp:build
  2. Run the tests:
    flutter test

About

GUI for DIR

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors