Tmux Project Manager

Manage projects and coordinate agents in tmux sessions

Overview

The "Tmux Project Manager" node facilitates managing software projects by orchestrating tmux sessions and coordinating team members represented as tmux windows. It automates project initialization, task assignment, progress tracking, quality validation, team member creation, and daily standups within tmux environments.

For the Create Project operation specifically, the node initializes a new tmux session representing a project, sets up windows corresponding to roles in the initial team size (e.g., Project Manager, Developers, QA), sends briefing messages to the Project Manager agent, and optionally deploys additional team members. This is useful for teams using tmux-based workflows or automated agents to simulate or manage project tasks in parallel terminal sessions.

Practical examples:

  • Automatically create a new project workspace with predefined roles and directories.
  • Kickstart a project with a detailed specification and team setup.
  • Use tmux windows as virtual team members coordinated by AI agents or scripts.

Properties

Name Meaning
Project Name The name of the new project to be created.
Project Path Filesystem path where the project directory will be initialized.
Project Specification Detailed requirements and specifications describing the project scope and goals.
Team Size Initial size of the project team; options are:
- Small (PM + 1 Dev)
- Medium (PM + 2 Devs + QA)
- Large (PM + Lead + 2 Devs + QA + DevOps)

Output

The output JSON object for the Create Project operation includes:

  • success (boolean): Indicates if the project was created successfully.
  • projectName (string): The name of the created project.
  • projectPath (string): The path to the project directory.
  • sessionCreated (string): The tmux session name created for the project.
  • windows (array of strings): Names of tmux windows created representing team roles.
  • teamSize (string): The selected team size option.
  • message (string): A confirmation message summarizing the creation status.

No binary data output is produced by this operation.

Dependencies

  • Requires access to a tmux environment on the host machine where n8n runs.
  • Uses an internal utility (TmuxBridge) to interact with tmux sessions and windows.
  • Optionally uses credentials that may specify external script directories or base paths for projects.
  • Relies on executing shell commands (tmux send-keys, tmux new-window) via Node.js child process execution.
  • No external API calls are made for this operation.

Troubleshooting

  • Common issues:
    • Failure to create tmux sessions if tmux is not installed or accessible.
    • Permission errors when accessing the specified project path.
    • Timeout waiting for agents to respond after sending briefing messages.
  • Error messages:
    • "Failed to create project: ..." indicates an error during session creation or messaging.
    • "Session <name> not found" would occur if subsequent operations target a non-existent session.
  • Resolutions:
    • Ensure tmux is installed and available in the system PATH.
    • Verify the project path exists and is writable.
    • Check that any required credentials or configurations for external scripts are correctly set.
    • Increase timeout delays if agents need more time to initialize.

Links and References

Discussion