Releases: superplanehq/superplane
SuperPlane v0.10.0
What's new since v0.9.0
4 new integrations
- Honeycomb
- incident.io
- LaunchDarkly
- Octopus Deploy
34 new components and triggers
- Core: Add Memory, Read Memory, Update Memory, Delete Memory
- Honeycomb: Create Event, On Alert Fired
- incident.io: Create Incident, On Incident
- LaunchDarkly: Get Feature Flag, Delete Feature Flag, On Feature Flag Change
- Octopus Deploy: Deploy Release, On Deployment Event
- AWS: CodePipeline • Get Pipeline, CodePipeline • Get Pipeline Execution, CodePipeline • Retry Stage Execution, CodePipeline • On Pipeline
- CircleCI: Get Workflow, Get Last Workflow, Get Recent Workflow Runs, Get Test Metrics, Get Flaky Tests
- Daytona: Create Repository Sandbox, Get Preview URL
- GitHub: Get Repository Permission, On PR Review Comment
- Prometheus: Create Silence, Expire Silence, Get Silence, Query, Query Range
- Rootly: On Incident Timeline Event
- Semaphore: Get Pipeline
- Telegram: Wait for Button Click
Improvements
- Canvas auto-layout: Automatically arrange nodes on the canvas.
- Realtime canvas updates: Canvas updates via the CLI are streamed to the UI.
- Daytona secrets: Inject secrets into Daytona sandboxes for bootstrap and command execution.
- AI canvas builder: Build canvases by chatting with an agent.
- CLI discovery output: More helpful agent guidance when using discovery commands with
output=text. - Canvas memory: Canvas-scoped data storage. Used by components to persist and retrieve values across different paths and executions of the same canvas.
Bug Fixes
- Fixed: HTTP requests now read the response body before context cancellation to avoid losing error details.
- Fixed: HTTP timeout errors no longer expose internal error details, but instead show user-friendly error messages.
- Fixed: Organization scoping failures return 404 instead of 401.
- Fixed: Nested invisible fields are filtered correctly in the UI.
- Fixed: Payload modal is now larger and easier to read.
- Fixed: CLI
whoamioutput includes the organization name.
Merged Pull-Requests
- feat: Add prometheus.createSilence and prometheus.expireSilence by @samuel-asleep in #3219
- feat: Add semaphore.getPipeline action by @Suraj-kumar00 in #2973
- feat: Add AWS CodePipeline Get Pipeline component by @manasa-bhagwat in #3220
- feat: Add AWS CodePipeline Get Pipeline Execution component by @manasa-bhagwat in #3225
- feat: Add rootly.onIncidentTimelineEvent component by @devroy10 in #3150
- feat: add prometheus.getSilence ,prometheus.query and prometheus.queryRange action components by @samuel-asleep in #3229
- fix: return 404 for organization-scoping failures instead of 401 by @forestileao in #3234
- feat: Add incident.io integration by @Vukotije in #3136
- feat: stream canvas updates through websocket by @lucaspin in #3245
- feat: Add AWS CodePipeline On Pipeline trigger by @manasa-bhagwat in #3242
- chore: Integrations ux improvements by @ropsii in #3244
- feat: add daytona.getPreviewUrl action by @forestileao in #3254
- feat: Enable agent mode in the organization settings by @shiroyasha in #3258
- feat: Build a canvas by chatting with an AI agent by @shiroyasha in #3259
- feat: Every component has a skill and the built in agent is able to discover them via tool calling by @shiroyasha in #3262
- feat: Resume previous conversations with the agent by @shiroyasha in #3263
- feat: Introduce /clear command to start a new conversation with the agent by @shiroyasha in #3264
- feat: AI builder is able to intelligently layout stuff on the canvas by @shiroyasha in #3265
- feat: AI builder is able to deduce which output channels to use for connections by @shiroyasha in #3267
- feat: Provide AI skill for the Wait and SSH component by @shiroyasha in #3269
- chore: add env variables and output channels to daytona component by @forestileao in #3270
- fix: update webhook trigger's code example and custom UI on auth change by @devroy10 in #3135
- fix: split pr comment trigger in PR review comment and PR comment by @forestileao in #3272
- fix(http): make timeout errors easier to understand by @SaurabhCodesAI in #3214
- feat: Add Octopus Deploy integration + 2 components by @zakaneki in #3221
- fix: allow expressions in GitHub comment repository by @hadzija7 in #3227
- fix: unable to do password login after setup by @usernamenenad in #3233
- feat: Add CircleCI Get Workflow, Get Last Workflow, Get Recent Workflow Runs, Get Test Metrics, Get Flaky Tests by @vikramships in #3240
- feat: more information on discovery commands when output=text by @lucaspin in #3277
- fix: use 80% of screen for payload modal size by @lucaspin in #3280
- fix: update daytona sandbox naming by @forestileao in #3282
- feat: new daytona.createRepositorySandbox component by @lucaspin in #3283
- fix(ui): filter nested invisible fields by @lucaspin in #3285
- feat: Canvas Auto-Layout (Frontend + Backend + CLI) by @forestileao in #3286
- feat: github.getRepositoryPermission component by @lucaspin in #3287
- fix: Daytona execute command ui by @forestileao in #3288
- fix: timeout handling for daytona.createRepositorySandbox by @lucaspin in #3289
- feat: add telegram.waitForButtonClick by @samuel-asleep in #3253
- feat: Add AWS CodePipeline Retry Stage Execution component by @manasa-bhagwat in #3266
- feat: Introduce canvas data storage by @shiroyasha in #3293
- feat: Add unique entry ID and timestamps for canvas memory by @shiroyasha in #3294
- feat: Memory view for canvases by @shiroyasha in #3295
- feat: Add Honeycomb integration by @gaga1307 in #3149
- feat: add filters on semaphore.onPipelineDone trigger by @lucaspin in #3296
- feat: Add Launchdarkly integration by @WashingtonKK in #3256
- feat: inject secrets into daytona sandbox by @lucaspin in #3297
- fix: CLI show organization name in whoami output by @manasa-bhagwat in #3292
- fix: Improve CodePipeline resource field UX consistency across components by @manasa-bhagwat in #3279
- feat: Access memory from expressions by @shiroyasha in #3299
- feat: Introduce a dedicated component for accessing memory elements by @shiroyasha in #3300
- feat: Components for deleting data from memory by @shiroyasha in #3301
- feat: Components for updating memory by @shiroyasha in #3302
- fix: read HTTP response body before context cancellation by @clarabennettdev in #3146
- chore(deps): bump rollup from 4.40.2 to 4.59.0 in /web_src by @dependabot[bot] in #3303
- chore(deps): bump minimatch in /web_src by @dependabot[bot] in #3304
- chore(deps): bump go.opentelemetry.io/otel/sdk from 1.39.0 to 1.40.0 by @dependabot[bot] in #3305
- chore(deps-dev): bump storybook from 9.1.17 to 9.1.19 in /web_src by @dependabot[bot] in #3306
- chore(deps-dev): bump hono from 4.12.0 to 4.12.3 in /web_src by @dependabot[bot] in #3307
- feat: AI Builder is able to pick up existing integrations + add Daytona skills by @shiroyasha in #3271
- chore: Cleanup AI code structure by @shiroyasha in #3309
- chore: Use new auto-layouting when adding nodes to the canvas by @Shiroy...
SuperPlane v0.9.0
What's new since v0.8.0
9 new integrations
- Bitbucket
- DigitalOcean
- GCP
- Grafana
- Harness
- JFrog Artifactory
- ServiceNow
- Statuspage
- Telegram
53 new components
- AWS: Describe Service, Run Task, Stop Task, Create Service, Update Service, Execute Command, Create Image, Get Image, On Image, Copy Image, Deregister Image, Enable Image, Disable Image, Enable Image Deprecation, Disable Image Deprecation, Create Queue, Get Queue, Send Message, Purge Queue, Delete Queue, Create Record, Upsert Record, Delete Record, Run Pipeline
- Bitbucket: On Push
- Dash0: Create HTTP Synthetic Check, Update HTTP Synthetic Check, Delete HTTP Synthetic Check, On Notification
- DigitalOcean: Create Droplet, On Droplet Event
- GCP: Create VM, On VM Instance
- GitHub: Get Workflow Usage, Add Issue Label, Remove Issue Label, Add Issue Assignee, Remove Issue Assignee
- Grafana: Query Data Source, On Alert Firing
- Harness: Run Pipeline, On Pipeline Completed
- Hetzner: Create Load Balancer, Delete Load Balancer
- JFrog Artifactory: Get Artifact Info, Delete Artifact, On Artifact Uploaded
- PagerDuty: Acknowledge Incident, Resolve Incident, Escalate Incident
- Rootly: Get Incident
- ServiceNow: Create Incident, Get Incident
- Slack: Wait For Button Click
- Statuspage: Create Incident, Get Incident, Update Incident
- Telegram: Send Message, On Mention
Improvements
- Service Accounts: Create and use service accounts for automation that should not depend on individual user credentials.
- CLI Secrets Management: Create, update, and delete organization secrets directly from the CLI.
- CLI Contexts: Connect one CLI setup to multiple organizations and switch contexts more easily.
- CLI Execution Controls: Manage executions, inspect root events, and operate node queues from the CLI.
- CLI Discovery UX: Use grouped discovery commands under a dedicated
indexcommand for faster lookup. - CLI Canvas Management: Configure the active canvas from the CLI for quicker environment switching.
- OpenAI Configuration: Set an optional custom base URL for proxy, gateway, or OpenAI-compatible endpoints.
- Webhook Trigger Authentication: Use a header token option to verify inbound webhook trigger requests.
Bug Fixes
- Fixed: HTTP component retries now use exponential backoff correctly, improving resilience under transient network failures.
- Fixed: OIDC webhook flows now consistently use the configured webhook base URL, including signer paths.
- Fixed: AWS EventBridge-based triggers and rules handle region filtering and multi-region provisioning more reliably.
- Fixed: Daytona command execution avoids endless-running states and uses a more stable session API flow.
- Fixed: Long filter values now wrap correctly in UI tooltips, improving readability in dense specs.
Merged Pull-Requests
- chore: Add new integrations to Readme by @AleksandarCole in #3125
- feat: manage secrets through CLI by @lucaspin in #3126
- docs: Eliminated naming inconcistency in the itegration guide by @kkomelin in #3127
- chore: Fix generated integration filenames by @shiroyasha in #3128
- feat(cli): group discovery-related commands under index command by @lucaspin in #3131
- feat: Introduce service accounts by @shiroyasha in #3133
- feat: AWS ECS integration + 3 components by @forestileao in #3118
- feat: Add AWS Route53 DNS record management components by @yinebebt in #3085
- feat: Add Rootly Get Incident action by @Manideepchopperla in #2974
- fix: Use webhook base url for OIDC by @shiroyasha in #3145
- feat: Add slack.waitForButtonClick action by @samuel-asleep in #3031
- fix: Use webhook base url for oidc signer as well by @shiroyasha in #3148
- feat: Add Bitbucket integration by @ishaksebsib in #3039
- feat(cli): commands for managing node queue by @lucaspin in #3151
- feat(cli): new root events command by @lucaspin in #3152
- feat(cli): manage executions by @lucaspin in #3153
- feat(cli): connect to multiple organizations through contexts by @lucaspin in #3154
- feat(cli): configure active canvas by @lucaspin in #3156
- feat: Add github.getWorkflowUsage component for Actions billing by @samuel-asleep in #3158
- fix(ci): use go mod download in test.setup by @lucaspin in #3181
- feat: bootstrap EC2 integration by @lucaspin in #3170
- fix: Switch to Daytona SessionAPI for commands by @AleksandarCole in #3178
- feat: Dash0 Synthetic Events 3 Components by @alabro-bm in #3183
- feat: Dash0 Webhook Integration and On Notification Component by @alabro-bm in #3184
- fix: Fix daytona endless running command issue by @AleksandarCole in #3186
- feat: Add Grafana integration by @mfuzailzubari in #3040
- feat: statuspage integration + 3 components by @re-pixel in #3117
- fix: multi-region EventBridge rule provisioning by @lucaspin in #3188
- feat: Added pooling for Daytona Create Sandbox by @alabro-bm in #3187
- fix: filter AWS EventBridge events by region by @lucaspin in #3189
- fix: Revert "feat: Dash0 Webhook Integration and On Notification Component" by @AleksandarCole in #3190
- fix: rule provisioning check for AWS ECS by @lucaspin in #3191
- feat: add DigitalOcean integration with droplet trigger and action by @aldoabellto235 in #2983
- feat: Add Create & Delete Hetzner Load Balancer integrations by @usernamenenad in #3169
- feat: remaining EC2 AMI operations by @lucaspin in #3182
- chore: add _target blank and noreferrer to markdown renderer anchors by @forestileao in #3192
- fix: grafana docs tags by @forestileao in #3199
- chore: HTML sanitizer for docs generation by @shiroyasha in #3201
- feat: add header token for webhook trigger by @forestileao in #3202
- feat: Add ServiceNow integration by @ConeDjordjic in #3113
- feat: dash0.onNotification trigger by @lucaspin in #3204
- chore(deps): bump tar from 7.5.7 to 7.5.9 in /web_src by @dependabot[bot] in #3203
- feat: Add Harness integration starter components by @0vertake in #3120
- chore(deps-dev): bump qs from 6.14.1 to 6.15.0 in /web_src by @dependabot[bot] in #3206
- chore(deps-dev): bump hono from 4.11.9 to 4.12.0 in /web_src by @dependabot[bot] in #3208
- chore(deps): bump filippo.io/edwards25519 from 1.1.0 to 1.1.1 by @dependabot[bot] in #3209
- feat: Aws Sqs Components by @tinhuynh1 in #3167
- feat: [WIP] ecs create,update service and execute command by @forestileao in #3144
- feat: Add AWS CodePipeline Run Pipeline action by @manasa-bhagwat in #3174
- feat: Add GCP base and components by @harxhist in #3138
- feat: Acknowledge, Resolve and Escalate incidents on PagerDuty by @shiroyasha in #3212
- fix: Enhance SpecsTooltip to support long filter value wrapping by @PrashantIndurkar in #2874
- feat: add optional base URL config to OpenAI integration by @kkomelin in #2929
- fix: Apply exponential backoff to retry delay instead of request timeout in HTTP component by @shiroyasha in #3213
- feat: add telegram integration by @samuel-asleep in #3210
- feat: Jfrog Artifactory Base by @alabro-bm in #3165
- feat: Add github components for adding, removing issue labels and assignees by @shiroyasha in #3216
- chore: New integratio...
SuperPlane v0.8.0
What's new since v0.7.0
7 new integrations
- CircleCI
- Cursor
- DockerHub
- GitLab
- Hetzner
- Prometheus
- Render
53 new components and triggers
- AWS CloudWatch (On Alarm)
- AWS CodeArtifact (Create Repository, Delete Repository, Get Package Version, On Package Version, Copy Package Versions, Delete Package Versions, Dispose Package Versions, Update Package Versions Status)
- AWS SNS (Create Topic, Delete Topic, Get Topic, Get Subscription, Publish Message, On Topic Message)
- CircleCI (Run Pipeline, On Workflow Completed)
- Cursor (Launch Cloud Agent, Get Last Message, Get Daily Usage Data)
- DockerHub (Get Image Tag, On Image Push)
- GitLab (Run Pipeline, On Pipeline, Get Pipeline, Get Latest Pipeline, Get Test Report Summary, On Merge Request, On Milestone, On Tag, On Release, On Vulnerability, Create Issue, On Issue)
- Hetzner (Create Server, Delete Server)
- Prometheus (Get Alert, On Alert)
- Render (Get Service, Get Deploy, Deploy, Cancel Deploy, Rollback Deploy, Purge Cache, Update Env Var, On Deploy, On Build)
- Rootly (Update Incident, Create Event)
- GitHub (Create Review, Create Issue Comment)
- PagerDuty (List Log Entries, List Notes)
Improvements
- Snap-to-grid toggle: Nodes will snap to a grid when moving or creating them if the toggle is enabled.
- SSH connection retries: Specify the number of retries and the delay between them in case of connection failure.
- Integrations:
- Support for multiple integrations of the same type. e.g. You can have multiple GitHub organizations connected at the same time.
- Integration names are editable.
- Error messages from integrations are now shown in the configuration sidebar.
- CLI:
integrations list- List integrations.integrations list-resources- List resources for a given integration.components list- List all available components.triggers list- List all available triggers.- Global
--outputflag (json / yaml / text) for command output.
Merged Pull Requests
What's Changed
- docs: Building an integration by @shiroyasha in #2980
- feat: integration state and configuration should be on the same page by @lucaspin in #2982
- feat: render integration base + 2 components by @forestileao in #2905
- feat: Implement initial GitLab integration (OAuth + PAT) by @dimbaja in #2696
- chore: add Logger to WebhookRequestContext by @lucaspin in #2988
- fix: infinite redirect due to invalid org ID by @forestileao in #2992
- chore: Update changelog skill for cursor by @AleksandarCole in #2993
- fix: prevent option selection reset in AutoCompleteSelect by @kkomelin in #2931
- feat: PagerDuty list notes by @e-todorovski-bm in #2857
- chore: Fix frontend mappers to use new format by @shiroyasha in #2996
- feat: add snap-to-grid toggle to workflow canvas by @prudh-vi in #2925
- chore: Overhaul of the researcher skill by @AleksandarCole in #3007
- feat: Add github.createIssueComment component by @Manideepchopperla in #2967
- feat(github): Add createReview component by @energypantry in #2940
- feat: PagerDuty list log entries by @shiroyasha in #3012
- fix: allow integrations of the same type + allow editing integration name by @forestileao in #3019
- fix: show integration error on the sidebar by @forestileao in #3020
- feat: Add rootly.createEvent component by @devroy10 in #2979
- feat: DockerHub base integration by @lucaspin in #2969
- chore: Hide run button by @AleksandarCole in #3028
- chore: Integrations list in readme by @AleksandarCole in #3037
- feat: AWS CodeArtifact expansion - repos + package version operations by @yinebebt in #2944
- feat: Add CircleCI integration by @vikramships in #2916
- feat: Add render.getService and render.getDeploy components by @vikramships in #3016
- feat: Add render.cancelDeploy and render.rollbackDeploy components by @vikramships in #3017
- feat: Add Render Purge Cache and Update Env Var components by @vikramships in #3018
- chore: Multi step integrations setup UI improvement by @ropsii in #3062
- chore: WebhookContext is now available for action components in the Setup and Execute callback function by @shiroyasha in #3072
- feat: Add Cursor Integration by @harxhist in #2991
- feat: Add new cursor.getLastMessage component by @shiroyasha in #3075
- feat: aws.cloudwatch.onAlarm trigger by @lucaspin in #3023
- feat: Add rootly.updateIncident action by @Manideepchopperla in #2978
- feat: Prometheus Base integration by @forestileao in #3068
- feat: GitLab triggers for merge requests, milestones, tags, releases and vulnerabilities by @lucaspin in #3084
- chore: Multi instance integrations UI by @ropsii in #3094
- fix: ignore integration with serialization issues when listing them by @lucaspin in #3111
- feat: bootstrap AWS SNS integration components by @fadhilijuma in #2963
- feat: new components for GitLab pipelines by @lucaspin in #3109
- feat: gitlab.runPipeline and gitlab.onPipeline by @lucaspin in #3115
- feat: Connection retries for SSH component by @shiroyasha in #3112
- feat: Hetzner integration with createServer and deleteServer by @shiroyasha in #3116
- feat: include discovery commands on CLI by @lucaspin in #3119
New Contributors
- @dimbaja made their first contribution in #2696
- @kkomelin made their first contribution in #2931
- @prudh-vi made their first contribution in #2925
- @Manideepchopperla made their first contribution in #2967
- @energypantry made their first contribution in #2940
- @devroy10 made their first contribution in #2979
- @yinebebt made their first contribution in #2944
- @vikramships made their first contribution in #2916
- @fadhilijuma made their first contribution in #2963
Full Changelog: v0.7.0...v0.8.0
SuperPlane v0.7.0
What's new since v0.6.0
3 new integrations
- Claude
- SendGrid
- Jira
15 new components
- SSH (Run Command) – standalone component to run commands on remote hosts
- AWS ECR (Get Image, Scan Image, Get Image Scan Findings, On Image Push, On Image Scan)
- AWS CodeArtifact (Get Package Version, On Package Version)
- GitHub (Get Release)
- Claude (Text Prompt)
- SendGrid (Send Email, On Email Event, Create Contact, Update Contact)
- Jira (Create Issue)
Improvements
- RBAC: Role-based access control. Define roles and permissions and control what each user can do in your organization.
- Secrets: Create, update, and delete organization secrets. Secrets can be used in the SSH component to store private keys. More components will support secrets in the future.
- Integrations UI/UX: Clearer flows when browsing and configuring integrations, and a fix for the duplicate integration banner.
Security Updates
- SSRF protection for HTTP requests
- Enforce payload limit on HTTP responses
- Security updates for dependencies
Merged Pull Requests
- fix: add dialog descriptions and keep canvas websocket reconnecting by @forestileao in #2695
- feat: Cleanup() for Component and Trigger by @lucaspin in #2783
- feat: Allow, creating, updating and deleting secrets from the organization menu by @shiroyasha in #2790
- chore: Allow running multiple Superplane instances at once by @shiroyasha in #2792
- chore: migrate RBAC prefixes to route-style + casbin_rule usage reduced by @forestileao in #2805
- chore: Instructions for Bounties by @AleksandarCole in #2802
- chore: Cursor skill - log issues by @AleksandarCole in #2814
- fix: webhoook trigger reset key not working by @forestileao in #2817
- feat: AWS ECR components and triggers by @lucaspin in #2806
- fix: missing Cleanup() on AWS components by @lucaspin in #2819
- chore: Remove InstallationID from contexts by @lucaspin in #2838
- feat: Enable RBAC UI with permission guard by @forestileao in #2839
- feat: initial AWS CodeArtifact blocks for package versions by @lucaspin in #2841
- fix: show correct number of permissions by @forestileao in #2842
- chore: reduce flakyness of tests + better test performance by @forestileao in #2844
- chore: improved integrations ux by @ropsii in #2823
- feat: list assets as part of aws.codeArtifact.getPackageVersion by @lucaspin in #2863
- fix: duplication for integration banner by @AleksandarCole in #2868
- fix: new common.FloatTime for AWS API timestamps by @lucaspin in #2864
- fix: missing auth guard in some places by @forestileao in #2876
- chore: getTriggerProps and CustomFieldRenderer signatures should not use API types by @lucaspin in #2877
- chore: update UI mappers signatures by @lucaspin in #2878
- chore: use BUILDKIT_PROGRESS = plain by @lucaspin in #2880
- chore: Dedicated API operations for keys in secrets + E2E tests for secrets by @shiroyasha in #2866
- fix: always fallback to defaultTriggerRenderer by @lucaspin in #2883
- feat: add GitHub Get Release component by @sangokp in #2832
- chore: update bounty program documentation by @AleksandarCole in #2889
- feat: use additional parameters when listing integration resources by @lucaspin in #2891
- feat: Jira Base Integration by @alabro-bm in #2890
- feat: SSH component by @shiroyasha in #2892
- feat: sendgrid integration base + components by @forestileao in #2893
- chore: improve sendgrid component designs by @forestileao in #2900
- chore(sendgrid): update event filtering to use predicate list by @forestileao in #2902
- fix: add SSRF protection to HTTP requests by @cchristous in #2804
- chore: Support up to 5 running instances by @shiroyasha in #2907
- Cursor can create changelog now by @AleksandarCole in #2912
- feat: Add Claude integration and Create Message component by @harxhist in #2909
- docs: update component-review.rules.md by @lucaspin in #2917
- fix: enforce limit on HTTP responses by @lucaspin in #2918
- docs: include security considerations on component review rules by @lucaspin in #2919
- fix: Component docs sync by @shiroyasha in #2935
- chore: Rename claude.createMessage -> claude.textPrompt by @shiroyasha in #2948
- chore: Add docs how to submit PRs for integrations by @shiroyasha in #2949
- chore(deps): bump tar and @hey-api/openapi-ts in /web_src by @dependabot[bot] in #2950
- chore(deps): bump react-router and react-router-dom in /web_src by @dependabot[bot] in #2951
- chore(deps): bump vite in /web_src by @dependabot[bot] in #2952
- chore(deps-dev): bump @modelcontextprotocol/sdk from 1.11.2 to 1.26.0 in /web_src by @dependabot[bot] in #2953
- chore(deps): bump glob from 10.4.5 to 10.5.0 in /web_src by @dependabot[bot] in #2955
- chore(deps-dev): bump storybook from 9.1.7 to 9.1.17 in /web_src by @dependabot[bot] in #2956
- chore(deps): bump golang.org/x/crypto from 0.37.0 to 0.45.0 by @dependabot[bot] in #2958
- chore(deps): bump esbuild, @vitest/ui and vitest in /web_src by @dependabot[bot] in #2960
- chore(deps): bump github.com/go-chi/chi/v5 from 5.1.0 to 5.2.2 by @dependabot[bot] in #2962
- chore: add WebhookHandler interface by @lucaspin in #2937
- chore: Use standard unit tests without explicit mocks by @shiroyasha in #2968
- fix: regen api files for TS due to updated lib by @forestileao in #2970
- feat: restrict event payload size emitted by components by @lucaspin in #2971
- chore: refactor NodeRef structure in Integrations API by @lucaspin in #2972
New Contributors
- @sangokp made their first contribution in #2832
- @cchristous made their first contribution in #2804
- @harxhist made their first contribution in #2909
Full Changelog: v0.6.0...v0.7.0
SuperPlane v0.6.0
What's new since v0.5.0
17 new components
- Cloudflare (Create/Update/Delete DNS Record)
- Daytona.io (Create/Delete Sandboxes, Run Scripts and Commands)
- Discord (Send Text Message)
- Datadog (Create Event)
- Rootly (Create Incident, On Incident)
- PagerDuty (Annotate Incident, Snooze Incident, On Incident Annotated)
Improvements
- Ability to pause processing of nodes on a canvas
- Configuration toggle for switching between fixed and expression based values
Bug Fixes
- Fixed: HTTP 500 while creating canvases with duplicate names
- Fixed: Non-standard terminology used for canvases and integrations
- Fixed: Component metadata not updating for github components
Merged Pull-Requests
- fix: node name duplication by @forestileao in #1871
- chore: Simplify component counting by @shiroyasha in #1880
- feat: pause component by @forestileao in #1882
- fix(annotations): Prevent pending debounced updates from being cancelled mid-typing by @forestileao in #1883
- chore: Introduce a cursor command for reviewing components in the application by @shiroyasha in #1884
- chore: Product design guidelines for components by @AleksandarCole in #1885
- chore: Add tags for component type by @AleksandarCole in #1886
- feat: add Datadog integration with createEvent component by @thiagokroger in #1878
- chore: better context for pause tooltip + new icon by @forestileao in #1897
- chore: remove .env by @e-todorovski-bm in #1900
- feat: PagerDuty Snooze Incident and On Incident Annotated by @e-todorovski-bm in #1895
- fix: undefined errors in mappers by @forestileao in #1901
- fix: metadata not updating for github + webhook replacement on setup by @forestileao in #1907
- chore(deps-dev): bump qs from 6.14.0 to 6.14.1 in /web_src by @dependabot[bot] in #1872
- fix: CSS security error on take screenshots by @forestileao in #1910
- chore: Reduce noisy console errors for handled UI failures by @forestileao in #1909
- fix: canvas with name should not throw error 500 by @forestileao in #1953
- feat: Discord Integration with Send Text Message by @e-todorovski-bm in #1728
- chore: improved error handling in pagerduty components by @e-todorovski-bm in #1903
- chore: Clean up the install instructions for discord bots by @shiroyasha in #2342
- feat: Rootly integration by @e-todorovski-bm in #2282
- feat: PagerDuty Annotate Incident by @e-todorovski-bm in #2514
- feat: Daytona.io Integration by @alabro-bm in #1889
- fix: control integration state through interface by @lucaspin in #2515
- test: update TimeGate E2E to work during weekends by @lucaspin in #2522
- feat: new Integration.Cleanup() method by @lucaspin in #2521
- feat: Actions() for Integration by @lucaspin in #2523
- chore: rename integration models and workers by @lucaspin in #2520
- chore: workflows.proto to canvases.proto by @lucaspin in #2524
- chore: use /canvases in UI routes by @lucaspin in #2525
- fix/button-text-copy-clipboard-download-file by @PrashantIndurkar in #1894
- chore: Introduce dev.pr.clean.checkout by @shiroyasha in #2526
- chore: rename workflow related models by @lucaspin in #2527
- chore: rename canvas related workers by @lucaspin in #2528
- Deleting GH Action by @AleksandarCole in #2530
- feat: Allow me to switch between selecting from a list, or using an expression by @shiroyasha in #2531
- feat: Update DNS Record by @shiroyasha in #2516
- feat: Creating cursor rules so it can log integrations by @AleksandarCole in #2550
- feat: Cloudflare Create DNS Record by @shiroyasha in #2517
- chore: Git stats script formatting + sort by commit number desc by @shiroyasha in #2551
- feat: cloudflare.deleteDnsRecord by @shiroyasha in #2519
- fix: wait component with wrong Copy + add defaults by @forestileao in #2679
- fix: trigger icon crash when metadata is missing by @forestileao in #2680
New Contributors
- @thiagokroger made their first contribution in #1878
- @alabro-bm made their first contribution in #1889
- @PrashantIndurkar made their first contribution in #1894
Full Changelog: v0.5.3...v0.6.0
SuperPlane is currently in alpha and moving fast. Expect rough edges and occasional breaking changes as we stabilize the core model and integrations. Early feedback is extremely valuable.
SuperPlane v0.5.3
First public (alpha) release of SuperPlane.
SuperPlane is an open-source (Apache 2.0) DevOps control plane for defining and running event-driven workflows across the tools you already use: CI/CD, release management, incident response, infrastructure, notifications, and more.
Available now
✓ 40+ starter components (10+ core, 30+ integrations)
✓ Event-driven workflow engine
✓ Visual Canvas builder
✓ Run history, event chain view, and debug console
✓ CLI and example workflows
In progress / upcoming
→ 200+ new components (AWS, Grafana, Datadog, Azure, GitLab, Jira, and more)
→ Canvas version control
→ SAML/SCIM with extended RBAC and permissions
→ Artifact version tracking
→ Public API
SuperPlane is currently in alpha and moving fast. Expect rough edges and occasional breaking changes as we stabilize the core model and integrations. Early feedback is extremely valuable.
v0.5.0
Release v0.5.0
v0.1.6
Release v0.1.6
v0.1.5
Release v0.1.5
v0.1.4
Release v0.1.4