Skip to content

Conversation

@leoafarias
Copy link
Collaborator

  • Add CLAUDE.md that imports AGENTS.md for project context
  • Add .claude/settings.json with sessionStart hook
  • Add .claude/README.md with configuration guide
  • Add scripts/setup.sh for automated environment setup
  • Update .gitignore to commit CLAUDE.md (team config)
    while keeping CLAUDE.local.md ignored (personal config)

The setup script automatically:

  • Verifies project structure
  • Installs FVM, Flutter, Melos, and DCM
  • Bootstraps the workspace
  • Generates code with build_runner
  • Runs flutter doctor to verify setup

This enables Claude Code (web and CLI) to automatically configure
the development environment and understand the project architecture.

- Add CLAUDE.md that imports AGENTS.md for project context
- Add .claude/settings.json with sessionStart hook
- Add .claude/README.md with configuration guide
- Add scripts/setup.sh for automated environment setup
- Update .gitignore to commit CLAUDE.md (team config)
  while keeping CLAUDE.local.md ignored (personal config)

The setup script automatically:
- Verifies project structure
- Installs FVM, Flutter, Melos, and DCM
- Bootstraps the workspace
- Generates code with build_runner
- Runs flutter doctor to verify setup

This enables Claude Code (web and CLI) to automatically configure
the development environment and understand the project architecture.
@docs-page
Copy link

docs-page bot commented Nov 5, 2025

To view this pull requests documentation preview, visit the following URL:

docs.page/btwld/superdeck~20

Documentation is deployed and generated using docs.page.

@leoafarias leoafarias requested a review from Copilot November 6, 2025 14:34
Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds Claude Code integration to the SuperDeck project, enabling automated development environment setup and providing project context to Claude Code sessions.

  • Introduces Claude Code configuration files with automatic session startup hooks
  • Implements an automated setup script for installing and configuring Flutter development tools
  • Configures context file to import project architecture documentation

Reviewed Changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
scripts/setup.sh Automated setup script that installs FVM, Flutter, Melos, DCM, and bootstraps the workspace
CLAUDE.md Context file that imports AGENTS.md for Claude Code
.claude/settings.json Claude Code configuration with sessionStart hook, model, and shell settings
.claude/README.md Documentation for Claude Code configuration and setup script
.gitignore Removes CLAUDE.md from ignore list to commit team configuration

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

# Install Flutter via FVM
step "Step 4/9: Installing Flutter via FVM"

FLUTTER_CHANNEL=$(cat .fvmrc | grep '"flutter"' | cut -d'"' -f4)
Copy link

Copilot AI Nov 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The parsing of .fvmrc using grep and cut is fragile and assumes a specific JSON format. If the JSON formatting changes (e.g., different spacing, different quote styles), this will break. Consider using jq or a more robust JSON parser: FLUTTER_CHANNEL=$(cat .fvmrc | jq -r '.flutter')

Copilot uses AI. Check for mistakes.
else
log_info "Installing FVM..."
dart pub global activate fvm
export PATH="$HOME/.pub-cache/bin:$PATH"
Copy link

Copilot AI Nov 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This PATH export is redundant as the same path was already added at line 75. Consider removing this duplicate line.

Suggested change
export PATH="$HOME/.pub-cache/bin:$PATH"

Copilot uses AI. Check for mistakes.
log_info "Flutter channel from .fvmrc: $FLUTTER_CHANNEL"

if [ -d ".fvm/flutter_sdk" ]; then
FLUTTER_VERSION=$(cd .fvm/flutter_sdk && bin/flutter --version | head -n1 || echo "unknown")
Copy link

Copilot AI Nov 6, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using cd in a subshell and relative path is fragile. Consider using an absolute path or checking the command more robustly: FLUTTER_VERSION=$(.fvm/flutter_sdk/bin/flutter --version | head -n1 || echo \"unknown\")

Suggested change
FLUTTER_VERSION=$(cd .fvm/flutter_sdk && bin/flutter --version | head -n1 || echo "unknown")
FLUTTER_VERSION=$("$(pwd)/.fvm/flutter_sdk/bin/flutter" --version | head -n1 || echo "unknown")

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants