🔮 GitHub co-founder & ex-CEO, Tom Preston-Werner, joins Pullflow as an investor!

Getting Started with Pullflow

Getting Started with Pullflow

Step-by-step instructions to help you set up and maximize the benefits of Pullflow for your team.

rabia-ahmed
Rabia Ahmed - 12/25/2023
  • Documentation
Getting Started

What is Pullflow?

Benefits of Pullflow

Features

This guide will walk you through setting up Pullflow with Slack, GitHub, and VS Code, so you and your team can collaborate seamlessly on code reviews.

What is Pullflow

Pullflow helps teams collaborate more efficiently on code reviews. Every pull request becomes a threaded conversation that is synchronized across GitHub, Slack, and VS Code. Each thread is also joined by the Pullflow AI agent helps with administrative tasks and contextual code assistance.

Benefits of Pullflow

Teams across industries have standardized their code review workflow around Pullflow to minimize distractions and context switching, enhancing productivity and reducing time-to-merge by 4X.

Step 1: Sign up for Pullflow

  1. Ensure Admin Permissions: Verify that you have the required permissions on GitHub and Slack to install apps.
  2. Option 1: Sign in with Slack: Open app.pullflow.com and sign in with Slack.
    Option 2: Install from GitHub: Install the Pullflow app from the GitHub Marketplace.

Step 2: Connect your GitHub repositories to Slack Channels

  1. Go to your desired Slack channel - or create a new one for code review collaboration.
  2. Invite the Pullflow agent to the channel. You can use the /invite @Pullflow Slack command.
  3. When prompted in Slack, select the repositories you want to connect.

Remember to invite the rest of the team to join the channel and sign in to Pullflow.com.

Step 3: Test your setup

  1. Create a pull-request (PR) in the connected GitHub repository.
  2. Verify that a thread is created in the connected channel for the PR.
  3. Post a message in the Slack thread and see it synchronized with GitHub. You can edit the post in GitHub and see the changes in Slack.

All set! Dive into Pullflow and explore its myriad features…

Additional Configuration

You can change the repository mapping at any time by entering the /pullflow config command in the Slack channel. Use this command to:

  1. Connect or disconnect repos
  2. Configure whether “Draft” PRs should be ignored until they are ready for review.
  3. Decide whether commits by agent, in addition to messages from agent, should be posted or ignored.
  4. Choose whether updates from CI/CD and check runs should be posted as they happen, only on failure, once upon completion, or silently with reactions.

Working with the Pullflow Agent

The Pullflow agent (@Pullflow in Slack) is a GPT-powered assistant that is always available to helps you:

  1. Take quick actions on PRs, such as request review, assign, label, etc.
  2. Have group conversation in the PR thread to assist with code reviews
  3. Answer general questions about software development, testing, infrastructure, etc.
  4. Help with Pullflow related issues or questions

You can converse with the Pullflow agent one-on-one in Slack, or have a group conversation in a channel or PR specific conversation in a PR thread.

Pull Request Actions

You can mention the Pullflow agent in PR threads on Slack to take quick actions on pull requests. This is especially useful on mobile.

Examples

@Pullflow request a review from @John
@Pullflow assign this to @Janet
@Pullflow add labels wip and documentation
@Pullflow add a review comment: "Please check spelling"
@Pullflow request changes: "Missing tests"

Iconography:

Pullflow uses icons and reactions on Slack messages to convey at-a-glance status and updates on pull requests.

PR StatusCheck-run Reactions
🔘 Opened⚪️ Running
🔍 Review requested🟡 Skipped
👍🏼 Approved🟢 Passed
✏️ Changes requested🔴 Failed
🗑️ Closed
✅ Merged
📄 Draft
🏷 Labeled
📥 Assigned
Channel Configuration Options

Option 1: Dedicated Code-Review Channel Per Repo

Attach each GitHub repo to a dedicated channel for pull requests (PRs) per team.

Pros:

  • One-to-one repo and channel mapping makes it easier for developers to join/leave and set notifications based on their role and interest.
  • The channel serves as a useful at-a-glance view of the project’s status.
  • A dedicated channel where each thread is started by the Pullflow agent makes the channel focused on PRs, free of other conversations.

Cons:

  • Some projects may have many repos, leading to too many code review channels with sparse activity.
  • Some teams may prefer more active collaboration across repos and teams.

Option 2: General Development-Channel Per Team

Attach the repo to an existing (or new) development channel for the team.

Pros:

  • A single place for all code-related conversations, including code reviews.
  • Code reviews become part of the conversation, spawning off other tasks and threads in the channel.

Cons:

  • Mixing agent-generated threads with human conversations can make it harder to see all the PR to-dos at a glance.
  • Team members can’t use channel-level notification control.

Option 3: One Channel for Project-Wide Code Reviews

Attach all project repos to one project-wide code review channel.

Pros:

  • Promotes project-wide knowledge-sharing and transparency.
  • Everyone knows how the project is changing, sparking spontaneous collaboration and minimizing redundant work.

Cons:

  • The all-in-one channel can get really busy, and team members may start to ignore the channel.
  • For team members only interested in some of the repos, it may be harder to stay up to date or set custom notifications.

Recommendation: If you’re unsure which option will work best for you, start with Option 1 and explore other configurations as your team gets accustomed to the workflow.

Working with the Pullflow Agent

The Pullflow agent (@Pullflow in Slack) is a GPT-powered assistant that is always available to helps you:

  1. Take quick actions on PRs, such as request review, assign, label, etc.
  2. Have group conversation in the PR thread to assist with code reviews
  3. Answer general questions about software development, testing, infrastructure, etc.
  4. Help with Pullflow related issues or questions

You can converse with the Pullflow agent one-on-one in Slack, or have a group conversation in a channel or PR specific conversation in a PR thread.

Pull Request Actions

You can mention the Pullflow agent in PR threads on Slack to take quick actions on pull requests. This is especially useful on mobile.

Examples

@Pullflow request a review from @John
@Pullflow assign this to @Janet
@Pullflow add labels wip and documentation
@Pullflow add a review comment: "Please check spelling"
@Pullflow request changes: "Missing tests"

PR Dashboard: Stay on Top of Your Team’s Pull Requests

With Pullflow’s integration with Slack, you can access your open pull requests directly from Slack, ensuring that you’re always updated on the status of your PRs, whether they’re awaiting review, in draft mode, or pending feedback from peers.

Keep Up with CI/CD in Real-Time

Pullflow integrates with GitHub Actions, external CI/CD, GitHub Apps, and more, to bring you a single view of your pull request from draft and review to test and deploy. This integration ensures that you are always updated on the status of your pull requests in real-time.

CICD-updates.jpg

Merge Statistics

Pullflow tracks essential metrics such as code-review turnaround time, review cycles, and response time as PRs get merged. This data helps you gain insights into your team’s performance and identify areas for improvement.

essential-metrics-track

IDE Integration (VS Code)

Pullflow’s integration with Visual Studio Code (VS Code) streamlines the code review process by bringing workflows and collaboration tools directly into the IDE. This integration enables developers to prioritize pull requests (PRs), stay updated, take quick actions, and maintain their flow state, all within the familiar environment of VS Code.

To get started, simply install the “Pullflow” extension from the Visual Studio Marketplace, and log in to Pullflow from the VS Code status bar. Once set up, developers can immediately start taking advantage of the integration’s features.

  • Unified Interface in VS Code: Integrates code review workflows, management, and team communication within the IDE, streamlining the review process in your development environment.

  • Quick Actions: Enables efficient handling of code review tasks using keyboard shortcuts or the status bar, including review requests, task labeling, and approvals.

    pr-actions

  • Synchronized Communication: Facilitates quick responses to team comments, integrating PR conversations from GitHub and Slack directly into the dev environment.

    sync-comm

  • Status Indicators and Quick Access Link: Provides a clear overview of PR statuses at a glance, with one-click navigation to GitHub or associated Slack threads.

The integration also includes a PR Dashboard that provides a consolidated view of active pull requests, helping developers quickly identify and focus on the PRs that need their attention.

Quick pick dashboard

By integrating with VS Code, Pullflow enhances the development workflow, making it easier for teams to collaborate and for individual developers to manage their tasks. This, in turn, contributes to improved productivity and a smoother code review process.

Admin Features

User Management Screen:

Administrators and owners can now manage users and change roles from the new User Management screen.

Change Role Feature:

Use the Change Role feature to change a user to Admin, giving them permission to configure channels and users.

Audit Log Page:

A new Audit Log page shows all the administrative actions taken by Admins and Owners.

Additional Notification Settings:

Three new configuration options give dev teams more control over the code review activity posted by Pullflow per channel.

Troubleshooting Questions

Here are some common technical difficulties users might encounter and ways to troubleshoot them:

  • Pullflow Agent Not Responding in Slack

Ensure that the Pullflow agent has been added to the desired Slack channel. Use the /invite @Pullflow command in Slack to add the agent to the channel.

  • GitHub Repository Not Syncing with Slack

Check that the GitHub repository has been correctly connected to Slack. Use the /pullflow config command in Slack to view the current configuration and make any necessary adjustments.

  • Incorrect User Identity Translation

Make sure that the GitHub and Slack profiles have been correctly linked in Pullflow. If the issue persists, contact Pullflow support for assistance.

  • PR Checks Not Updating in Slack

Verify that the GitHub Actions, CI/CD, and other integrations are correctly set up and functioning. If everything appears to be in order, use the /pullflow config command in Slack to check the notification settings for PR checks.

  • Unable to Change User Roles in Pullflow

Only administrators and owners have the ability to change user roles. If you are an admin or owner and are still unable to change user roles, contact Pullflow support for assistance.

  • Audit Log Not Showing Recent Actions

The audit log may take some time to update. If the recent actions are still not showing after some time, contact Pullflow support for assistance.

Privacy and Security

We collect essential information from Slack and GitHub, such as member details, channel information, and repository names, to enhance our services. Our robust security measures, including encryption protocols and access controls, safeguard your data.

We comply with GDPR and CCPA regulations and share the responsibility of compliance with our users. Our platform enables users to access and manage their data, with a role-based access control system in place for user permissions. We ensure third-party services adhere to our privacy standards and have a clear data retention policy, with options for data deletion or exportation.

In case of a data breach, we have a comprehensive response plan and will promptly notify users. We encourage strong password security and the use of two-factor authentication. For more information, please refer to our Privacy Policy and Terms of Service.

Feedback and Support

Whether you have questions, need support, or have feedback to share, don’t hesitate to reach out via chat or email at support@pullflow.com. We’re committed to ensuring that your experience with Pullflow is nothing short of exceptional.

Experience seamless collaboration on
code reviews.