From a52ebed77c84508dc21cc79d563a75bc816ed16c Mon Sep 17 00:00:00 2001 From: "seahaven-openswe[bot]" <296972425+seahaven-openswe[bot]@users.noreply.github.com> Date: Wed, 1 Jul 2026 14:38:39 -0400 Subject: [PATCH] chore: align docs, templates, and metadata with Sea Haven handbook [closes SH-93] (#95) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Align repo docs, templates, and metadata with Sea Haven handbook - Replace dynamic upstream-fork badges with static License, Python, and TypeScript badges; add the GitHub-native CI badge for dev. - Repoint SECURITY.md contact to adam@seahavenind.com. - Add .github/CODEOWNERS assigning reviews to @amoussa1229. - Add PR template using the handbook structure. - Add issue templates for bug, feature, and task plus a security link. - Remove emoji from the README per CONTRIBUTING.md style. Refs: SH-93 * Restore Linear 👀 acknowledgement and update metadata contacts - README.md: bring back the documented 👀 reaction on Linear issues. - README.md: refresh the TypeScript badge to 6.0+ to match ui/package.json. - SECURITY.md + issue template: switch security contact to role alias. Refs: SH-93 --------- Co-authored-by: amoussa1229 <166072409+amoussa1229@users.noreply.github.com> Co-authored-by: Adam Moussa --- .github/CODEOWNERS | 2 ++ .github/ISSUE_TEMPLATE/bug.yml | 36 ++++++++++++++++++++++++++++++ .github/ISSUE_TEMPLATE/config.yml | 5 +++++ .github/ISSUE_TEMPLATE/feature.yml | 29 ++++++++++++++++++++++++ .github/ISSUE_TEMPLATE/task.yml | 29 ++++++++++++++++++++++++ .github/PULL_REQUEST_TEMPLATE.md | 15 +++++++++++++ README.md | 13 ++++++----- SECURITY.md | 2 +- 8 files changed, 124 insertions(+), 7 deletions(-) create mode 100644 .github/CODEOWNERS create mode 100644 .github/ISSUE_TEMPLATE/bug.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature.yml create mode 100644 .github/ISSUE_TEMPLATE/task.yml create mode 100644 .github/PULL_REQUEST_TEMPLATE.md diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 00000000..cab6aae6 --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1,2 @@ +# Global review assignment +* @amoussa1229 diff --git a/.github/ISSUE_TEMPLATE/bug.yml b/.github/ISSUE_TEMPLATE/bug.yml new file mode 100644 index 00000000..9d2d231b --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug.yml @@ -0,0 +1,36 @@ +name: Bug Report +description: Report a defect or unexpected behavior. +labels: [bug] +body: + - type: markdown + attributes: + value: | + Thanks for taking the time to file a bug report. + - type: textarea + id: summary + attributes: + label: Summary + description: A concise description of the bug. + validations: + required: true + - type: textarea + id: reproduction + attributes: + label: Reproduction + description: Steps to reproduce the behavior, including code or commands if applicable. + validations: + required: true + - type: textarea + id: expected + attributes: + label: Expected behavior + description: What you expected to happen. + validations: + required: true + - type: textarea + id: environment + attributes: + label: Environment + description: Python version, OS, and any relevant dependency versions. + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 00000000..959ffa56 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,5 @@ +blank_issues_enabled: false +contact_links: + - name: Sea Haven Security + url: mailto:security@seahavenind.com + about: Report security concerns privately. diff --git a/.github/ISSUE_TEMPLATE/feature.yml b/.github/ISSUE_TEMPLATE/feature.yml new file mode 100644 index 00000000..84f20c97 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature.yml @@ -0,0 +1,29 @@ +name: Feature Request +description: Propose a new feature or enhancement. +labels: [enhancement] +body: + - type: markdown + attributes: + value: | + Thanks for suggesting an improvement. + - type: textarea + id: summary + attributes: + label: Summary + description: What is the feature or enhancement? + validations: + required: true + - type: textarea + id: motivation + attributes: + label: Motivation + description: Why is this needed? What problem does it solve? + validations: + required: true + - type: textarea + id: alternatives + attributes: + label: Alternatives + description: Any alternative approaches you considered. + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/task.yml b/.github/ISSUE_TEMPLATE/task.yml new file mode 100644 index 00000000..2f1f535d --- /dev/null +++ b/.github/ISSUE_TEMPLATE/task.yml @@ -0,0 +1,29 @@ +name: Task +description: Track a maintenance, documentation, or engineering task. +labels: [task] +body: + - type: markdown + attributes: + value: | + Use this template for work that is not a bug or feature request. + - type: textarea + id: summary + attributes: + label: Summary + description: What needs to be done? + validations: + required: true + - type: textarea + id: acceptance + attributes: + label: Acceptance criteria + description: How will we know this task is complete? + validations: + required: true + - type: textarea + id: notes + attributes: + label: Notes + description: Any additional context, dependencies, or links. + validations: + required: false diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 00000000..62df881b --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,15 @@ +## Summary + + + +## Validation + + + +## Tests + + + +## Notes + + diff --git a/README.md b/README.md index 343bda15..88b1058c 100644 --- a/README.md +++ b/README.md @@ -13,11 +13,12 @@
- License - GitHub Stars + CI + License: MIT + Python 3.11+ + TypeScript 6.0+ Built on LangGraph Built on Deep Agents - Twitter / X

@@ -27,7 +28,7 @@ Elite engineering orgs like Stripe, Ramp, and Coinbase are building their own in Open SWE is the open-source version of this pattern. Built on [LangGraph](https://langchain-ai.github.io/langgraph/) and [Deep Agents](https://github.com/langchain-ai/deepagents), it gives you the same architecture those companies built internally: cloud sandboxes, Slack and Linear invocation, subagent orchestration, and automatic PR creation — ready to customize for your own codebase and workflows. > [!NOTE] -> 💬 Read the **announcement blog post [here](https://blog.langchain.com/open-swe-an-open-source-framework-for-internal-coding-agents/)** +> Read the **announcement blog post [here](https://blog.langchain.com/open-swe-an-open-source-framework-for-internal-coding-agents/)** --- @@ -103,7 +104,7 @@ Open SWE's orchestration has two layers: All three companies in the article converge on **Slack as the primary invocation surface**. Open SWE does the same: - **Slack** — Mention the bot in any thread. Supports `repo:owner/name` syntax to specify which repo to work on. The agent replies in-thread with status updates and PR links. -- **Linear** — Comment `@openswe` on any issue. The agent reads the full issue context, reacts with 👀 to acknowledge, and posts results back as comments. +- **Linear** — Comment `@openswe` on any issue. The agent reacts with 👀 to acknowledge, reads the full issue context, and posts results back as comments. - **GitHub** — Tag `@openswe` in PR comments on agent-created PRs to have it address review feedback and push fixes to the same branch. Each invocation creates a deterministic thread ID, so follow-up messages on the same issue or thread route to the same running agent. @@ -136,7 +137,7 @@ This is an area where you can extend Open SWE for your org: add deterministic CI ## Features - **Trigger from Linear, Slack, or GitHub** — mention `@openswe` in a comment to kick off a task -- **Instant acknowledgement** — reacts with 👀 the moment it picks up your message +- **Instant acknowledgement** — acknowledges the moment it picks up your message - **Message it while it's running** — send follow-up messages mid-task and it'll pick them up before its next step - **Run multiple tasks in parallel** — each task runs in its own isolated cloud sandbox - **GitHub OAuth built-in** — authenticates with your GitHub account automatically diff --git a/SECURITY.md b/SECURITY.md index f2414c9c..bd7014c2 100644 --- a/SECURITY.md +++ b/SECURITY.md @@ -1,3 +1,3 @@ # Security Policy -For any security concerns, please contact us at security@langchain.dev. +For any security concerns, please contact us at security@seahavenind.com.