diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..1c7cec1 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,55 @@ +name: Bug report +description: Something in this repository doesn't work as documented. +title: "Bug: " +labels: ["bug"] +body: + - type: markdown + attributes: + value: | + Thanks for reporting. This issue is public: don't paste passwords, API keys, robot Wi-Fi credentials or data that identifies a study participant. + For a security vulnerability, don't open an issue; follow the repository's security policy instead. + - type: textarea + id: what-happened + attributes: + label: What happened? + description: What you did, what you expected and what happened instead. + validations: + required: true + - type: textarea + id: reproduce + attributes: + label: Steps to reproduce + description: Exact commands, launch files or clicks, in order. + placeholder: | + 1. ros2 launch ... + 2. ... + validations: + required: true + - type: textarea + id: logs + attributes: + label: Logs and error messages + description: Paste the full output. It is formatted as code automatically. + render: shell + - type: input + id: environment + attributes: + label: Environment + description: OS and version, ROS 2 distribution, language or tool versions, and the branch or commit. + placeholder: "Ubuntu 24.04, ROS 2 Jazzy, commit abc1234" + validations: + required: true + - type: dropdown + id: hardware + attributes: + label: Does this involve a robot or other hardware? + options: + - "No, software only" + - "Yes (name the robot, firmware and how it was controlled below)" + validations: + required: true + - type: textarea + id: hardware-details + attributes: + label: Hardware details + description: Robot or device, firmware or software version, and whether it was teleoperated, autonomous or scripted. diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..46d4ab9 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,8 @@ +blank_issues_enabled: true +contact_links: + - name: Advanced Telerobotics Research Lab website + url: https://www.atr.cs.kent.edu/ + about: Questions about joining or working with the lab. + - name: Getting started at the lab + url: https://github.com/ATR-Lab/getting-started-atr-lab + about: Lab rules, safety, research standards, tools and hardware for lab members. diff --git a/.github/ISSUE_TEMPLATE/docs_fix.yml b/.github/ISSUE_TEMPLATE/docs_fix.yml new file mode 100644 index 0000000..20a1a97 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/docs_fix.yml @@ -0,0 +1,24 @@ +name: Documentation fix +description: A wrong fact, an outdated step, a broken link or something unclear in the docs. +title: "Docs: " +labels: ["documentation"] +body: + - type: input + id: page + attributes: + label: Page + description: Link to the page (and the section, if you can). + placeholder: "/ATR-Lab//blob//.md#
" + validations: + required: true + - type: textarea + id: problem + attributes: + label: What's wrong or unclear? + validations: + required: true + - type: textarea + id: fix + attributes: + label: Suggested fix and source + description: The correct text or step, and where it comes from (an official doc, a vendor page, the lab). Facts about the lab need a source. diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..54ea46f --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,29 @@ +name: Feature request +description: Suggest an improvement or a new capability. +title: "Feature: " +labels: ["enhancement"] +body: + - type: textarea + id: problem + attributes: + label: What problem would this solve? + description: Who needs it and what they can't do today. + validations: + required: true + - type: textarea + id: proposal + attributes: + label: What do you propose? + description: The change you have in mind. Sketches, links and examples help. + validations: + required: true + - type: textarea + id: alternatives + attributes: + label: Alternatives you considered + - type: checkboxes + id: contribute + attributes: + label: Contributing + options: + - label: I'd like to work on this myself. diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md new file mode 100644 index 0000000..65f84f8 --- /dev/null +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -0,0 +1,19 @@ +## What this changes + + + +## Why + + + +## How I tested it + + + +## Checklist + +- [ ] It builds, and the tests and linters this repository uses pass (see `AGENTS.md`). +- [ ] Docs, `README.md` and `AGENTS.md` are updated if behavior, files or commands changed. +- [ ] No secrets, credentials, large binaries or data that identifies study participants are included. +- [ ] If an AI coding assistant helped, I reviewed and tested every change it made. diff --git a/.github/workflows/docs.yml b/.github/workflows/docs.yml new file mode 100644 index 0000000..7f703e7 --- /dev/null +++ b/.github/workflows/docs.yml @@ -0,0 +1,37 @@ +name: docs + +on: + push: + branches: [main, master] + pull_request: + schedule: + - cron: "0 9 * * 1" # Mondays: catch links that rot over time + workflow_dispatch: + +permissions: + contents: read + +jobs: + markdown: + name: Markdown lint + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v7 + - uses: DavidAnson/markdownlint-cli2-action@v24 + with: + globs: "**/*.md" + + links: + name: Link check + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v7 + # Pull requests check only links to files in this repository (--offline), because links to other + # ATR-Lab repositories may point at pages that are merged later. Pushes and the weekly run check everything. + - uses: lycheeverse/lychee-action@v2 + with: + args: >- + --no-progress --max-concurrency 8 --accept 200,206,429 + ${{ github.event_name == 'pull_request' && '--offline' || '' }} + "**/*.md" + fail: true diff --git a/.lycheeignore b/.lycheeignore new file mode 100644 index 0000000..5328291 --- /dev/null +++ b/.lycheeignore @@ -0,0 +1,13 @@ +# Sites that block automated link checkers (403/999 to bots). Check these by hand when you edit them. +^https://dl\.acm\.org/ +^https://doi\.org/10\.1145/ +^https://ieeexplore\.ieee\.org/ +^https://(www\.)?linkedin\.com/ +^https://(www\.)?researchgate\.net/ +^https://(www\.)?instagram\.com/ +^https://(www\.)?x\.com/ +^https://(www\.)?twitter\.com/ +^https://(www\.)?reddit\.com/ +^https://(www\.)?raspberrypi\.com/ +^https://forums\.raspberrypi\.com/ +^https://support\.unitree\.com/ diff --git a/.markdownlint.jsonc b/.markdownlint.jsonc new file mode 100644 index 0000000..5bc8cbb --- /dev/null +++ b/.markdownlint.jsonc @@ -0,0 +1,20 @@ +// markdownlint rules for ATR Lab docs (https://github.com/DavidAnson/markdownlint) +{ + "default": true, + // Long lines are fine in prose; editors wrap them. + "MD013": false, + // READMEs open with an HTML header image instead of a "# Heading". + "MD041": false, + // HTML is allowed only for layout GitHub supports: centered headers, card grids, collapsible sections. + "MD033": { + "allowed_elements": ["p", "img", "a", "b", "br", "sub", "sup", "table", "tr", "td", "th", "thead", "tbody", "picture", "source", "details", "summary", "kbd", "div"] + }, + // Repeated headings are fine in different sections (e.g. "Safety" under each robot). + "MD024": { "siblings_only": true }, + // Numbered lists may use 1. 2. 3. or all 1. + "MD029": false, + // Table pipe spacing is cosmetic; "|---|" and "| --- |" are both fine. + "MD060": false, + // Emphasis used as a label ("**Read this when** ...") is not a heading. + "MD036": false +} diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..bbe983f --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,103 @@ +# AGENTS.md: ATR-Lab/.github + +This is the special `.github` repository of the **ATR-Lab** GitHub organization, which belongs to the Advanced +Telerobotics Research Lab (Department of Computer Science, Kent State University). It holds the organization's +front page (`profile/README.md`) and the default community files that GitHub applies to every ATR-Lab repository +without its own. It is **not** where lab documentation lives; this file also serves as the map of the whole +organization, so start here when you need to know which repository answers a question. + +## Organization map: which repository answers which question + +| Question | Repository | Default branch | +|---|---|---| +| What is the lab, what does it research, what has it achieved, who is in it, where is the press kit? | [ATR-Lab/about](https://github.com/ATR-Lab/about) | `master` | +| I'm new: rules, safety, research standards, LaTeX templates, tech stack, lab hardware? | [ATR-Lab/getting-started-atr-lab](https://github.com/ATR-Lab/getting-started-atr-lab) | `master` | +| How should code look, which lint configs, Git and PR practice, rules for AI coding agents? | [ATR-Lab/dev-guidelines](https://github.com/ATR-Lab/dev-guidelines) | `master` | +| ROS 2 concepts, distributions (Foxy to Lyrical), installation, commands, debugging, lab robots in ROS 2? | [ATR-Lab/all-things-ros2](https://github.com/ATR-Lab/all-things-ros2) | `main` | +| Logos, colors, fonts, templates, brand and copy rules, verified lab facts? | [ATR-Lab/atr-lab-design-skill](https://github.com/ATR-Lab/atr-lab-design-skill) | `main` | +| Reproducible ROS 2 environments with lockfiles? | [MarcoDotIO/rosenv](https://github.com/MarcoDotIO/rosenv) (a lab member's project, outside the org) | `main` | + +**Public project repositories** (many other lab repositories are private; don't name private ones in public +files): + +| Platform or topic | Repositories | +|---|---| +| Unitree Go2 (quadruped) | `go2_ws` | +| Booster K1 (humanoid) | `expressive-motion` | +| SoftBank Pepper | `PepperKit`, `PepperLLMDemo`, `PepperLLMDemo-Server` | +| Coffee Buddy (service robot) | `kami-head` | +| Yahboom robots | `yahboom_r2l_ros2` | +| Robot mower | `robo_mower_ws` | +| TeleBot line (telepresence) | `TeleBot-4R`, `TeleBot-4R-XR` | +| Dynamixel servos | `multi-servo-dynamixel-library` | +| Other | `atr-dashboard`, `HRI-Tello-Drone-Controller`, `ATR-Lab.github.io` | + +Check visibility before linking any other repository: +`gh repo view ATR-Lab/ --json visibility --jq .visibility`. + +## Repo map (this repository) + +| Path | Purpose | +|---|---| +| `profile/README.md` | Organization front page (keep it short; absolute image URLs) | +| `profile/assets/header.png` | 1600 × 400 front-page header, built from the design skill's poster band and the official lockup | +| `profile/assets/social-preview.png` | 1280 × 640 social preview (uploaded by hand in Settings) | +| `profile/assets/icons/` | 96 px navy icon badges from the design skill, used in the "Start here" grid | +| `README.md` | Explains this repository and the organization settings to fix by hand | +| `CONTRIBUTING.md`, `CODE_OF_CONDUCT.md`, `SECURITY.md`, `SUPPORT.md` | Org-wide default community files | +| `.github/ISSUE_TEMPLATE/` | Default issue forms (`bug_report.yml`, `feature_request.yml`, `docs_fix.yml`) and `config.yml` | +| `.github/PULL_REQUEST_TEMPLATE.md` | Default pull request template | +| `.github/workflows/docs.yml` | Markdown lint and link check for this repository only | +| `.markdownlint.jsonc` | Markdown lint rules shared by all lab docs repositories | +| `.lycheeignore` | Sites that block automated link checkers (check those links by hand) | +| `AGENTS.md`, `CLAUDE.md` | This file; `CLAUDE.md` imports it | +| `LICENSE` | MIT | + +## Sources of truth + +- **Lab facts** (names, director, projects, platforms, achievements and their exact wording, contacts, handles): + only `references/brand-foundation.md` in the ATR Lab design skill (installed locally at + `~/.claude/skills/atr-lab-design/`). Never invent names, rooms, results, dates or numbers; write a + `[bracketed placeholder]` and list it under "Open items". +- **Never print** anything on the "Never print" list in `brand-foundation.md` §11 (a nonexistent social handle, + the director's office room and phone as the lab's, an outdated college name, "KSU" in running copy, "ATR" + alone, RoboCup placements, media-outlet counts). The brand check below catches most of these. +- **GitHub behavior** (community health files, issue forms, profile READMEs): docs.github.com. + +## Writing rules + +- Kent State style: sentence-case headings, no Oxford comma, "and" not "&", dates like "Sept. 30, 2026", no emoji. +- The lab's name: "Advanced Telerobotics Research Lab" on first reference, then "the lab"; "ATR Lab" only in + display text, always with Kent State nearby. +- "ROS 2", never "ROS2", in prose. Cut hype words (cutting-edge, state-of-the-art, innovative, leverage, robust). +- Default community files apply to about 100 repositories: keep them general, short and free of lab-only + details that could go stale. +- Issue forms must stay valid against GitHub's issue-forms schema. + +## How to check your work + +```bash +# Brand, facts and Kent State style (exit code 0 means no errors) +PYTHONDONTWRITEBYTECODE=1 ~/.claude/skills/atr-lab-design/.venv/bin/python ~/.claude/skills/atr-lab-design/scripts/brand_check.py $(git ls-files --cached --others --exclude-standard '*.md') +# Markdown structure +npx --yes markdownlint-cli2 "**/*.md" +# Issue forms parse as YAML +uvx --with pyyaml python -c "import glob, yaml; [yaml.safe_load(open(f)) for f in glob.glob('.github/ISSUE_TEMPLATE/*.yml')]" +``` + +## Open items + +| Where | Placeholder | Who can fill it | +|---|---|---| +| `CODE_OF_CONDUCT.md` | `[conduct contact email]`, `[conduct contact role]`; the page is a draft until the director approves | Director | +| `SECURITY.md` | `[security contact email]` | Director or lab manager | +| `SUPPORT.md` | `[Slack channel]` | Lab manager | +| `README.md` (org settings table) | `[a kent.edu lab address]` | Director | +| Organization settings | Display name, description, location, email and avatar (see `README.md`) | An org owner | + +## Related repos + +- [about](https://github.com/ATR-Lab/about): what the lab is, research, achievements, press kit, members. +- [getting-started-atr-lab](https://github.com/ATR-Lab/getting-started-atr-lab): onboarding, rules, safety, research standards, tech stack, hardware. +- [dev-guidelines](https://github.com/ATR-Lab/dev-guidelines): code style, lint configs, Git, AI-assisted development. +- [all-things-ros2](https://github.com/ATR-Lab/all-things-ros2): the lab's ROS 2 handbook. diff --git a/CLAUDE.md b/CLAUDE.md new file mode 100644 index 0000000..43c994c --- /dev/null +++ b/CLAUDE.md @@ -0,0 +1 @@ +@AGENTS.md diff --git a/CODE_OF_CONDUCT.md b/CODE_OF_CONDUCT.md new file mode 100644 index 0000000..765a6b8 --- /dev/null +++ b/CODE_OF_CONDUCT.md @@ -0,0 +1,48 @@ +# Code of conduct + +> **Read this when** you take part in any ATR-Lab repository: issues, pull requests, reviews, discussions or +> comments. A repository with its own `CODE_OF_CONDUCT.md` overrides this page. + +The Advanced Telerobotics Research Lab at Kent State University builds robots that help people rather than +replace them, and we want our online spaces to work the same way: people first, work second. + +## What we expect + +- Be respectful and assume good intent. Critique ideas and code, never people. +- Be welcoming to newcomers. Explain terms, link to docs and remember that everyone started somewhere. +- Give credit. Name the people whose work, data or ideas you build on. +- Be honest about results. Don't overstate what a robot, a model or a study can do. +- Respect privacy. Don't post other people's personal information, photos or study data. + +## What is not acceptable + +- Harassment, insults, threats or discriminatory language or imagery, in public or in private messages. +- Sexualized language or content, or unwelcome attention. +- Publishing someone's private information without their explicit permission. +- Sustained disruption of discussions, reviews or events. +- Any other conduct that a reasonable person would find inappropriate in a professional setting. + +## Scope + +This code applies in every ATR-Lab repository and in any space where someone represents the lab online. +Lab members are also bound by the +[lab's code of conduct](https://github.com/ATR-Lab/getting-started-atr-lab/blob/master/lab-rules/code-of-conduct.md) +and by Kent State University policies, including the +[Student Code of Conduct](https://www.kent.edu/studentconduct/code-student-conduct). + +## Reporting + +Report a problem to [conduct contact email]. Reports are read by [conduct contact role] and handled as +confidentially as the situation allows. If the concern involves that person, contact the lab director, +Jong-Hoon Kim, associate professor of computer science, at . + +For discrimination, harassment or safety concerns, Kent State University's own reporting routes also apply; +the lab will point you to the right university office. + +## Enforcement + +Maintainers may edit or remove comments, commits or issues that break this code, and may restrict or block +anyone who does so repeatedly or seriously. Decisions are explained to the person involved when it is safe to +do so. + +Last reviewed: Sept. 30, 2026 · Draft until the director approves diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..2ba3708 --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,56 @@ +# Contributing to ATR-Lab repositories + +> **Read this when** you want to change code or docs in any repository of the Advanced Telerobotics Research Lab +> at Kent State University. A repository with its own `CONTRIBUTING.md` overrides this page. + +Thank you for helping. Lab members and outside contributors follow the same short process: talk first, change +one thing per pull request, and leave the repository easier to use than you found it. + +## Before you start + +1. **Look for an existing issue**, or open one that describes the problem or the idea. For a typo or a broken + link, go straight to a pull request. +2. **Read the repository's `README.md` and `AGENTS.md`.** `AGENTS.md` lists the files, the sources of truth and the + checks that repository expects. +3. **Follow the lab's code style.** The [dev guidelines](https://github.com/ATR-Lab/dev-guidelines) have style + guides and copy-ready lint configs for six languages: C and C++; Swift; Kotlin; C# and Unity; Python; + JavaScript and TypeScript. + +## Making a change + +1. Create a branch from the default branch: `feature/`, `fix/` or `docs/`. +2. Keep commits small and write messages that follow the + [seven rules of a great commit message](https://github.com/ATR-Lab/dev-guidelines/blob/master/docs/git-and-github.md). +3. Build, test and lint before you push. The checks each repository runs are in its `AGENTS.md`. +4. Open a pull request. Fill in the template, link the issue (`Closes #12`) and ask for a review. +5. Address review comments with new commits; the reviewer merges when the checks pass. + +## Rules that apply everywhere + +- **Never commit secrets:** passwords, API keys, tokens, robot Wi-Fi credentials or `.env` files. If one slips + in, tell a maintainer right away; deleting it in a later commit does not remove it from history. +- **Never commit research data about people:** study recordings, consent forms or anything that identifies a + participant. Human-subjects data stays in the storage your IRB protocol names. +- **Large files** (meshes, bags, datasets, model weights) go through Git LFS or external storage, not plain Git. +- **AI coding assistants** (Claude Code, Codex and others) are welcome. You are responsible for every line they + write: review the diff, run the tests and follow the + [lab's rules for AI-assisted development](https://github.com/ATR-Lab/dev-guidelines/blob/master/docs/ai-assisted-development.md). +- **Label robot videos** in pull requests and docs: teleoperated, autonomous, semi-autonomous or scripted, and + the playback speed. + +## Licensing of contributions + +By contributing, you agree that your contribution is released under the license of the repository you are +contributing to. The names and logos of the Advanced Telerobotics Research Lab and Kent State University are +trademarks and are not covered by any repository license. + +## Code of conduct + +Everyone who takes part in ATR-Lab repositories follows the [code of conduct](CODE_OF_CONDUCT.md). Lab members +also follow the [lab's own code of conduct](https://github.com/ATR-Lab/getting-started-atr-lab/blob/master/lab-rules/code-of-conduct.md). + +## Questions + +See [SUPPORT.md](SUPPORT.md) for where to ask. + +Last reviewed: Sept. 30, 2026 diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..2db9cca --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024-2026 Advanced Telerobotics Research Lab contributors, Kent State University + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md new file mode 100644 index 0000000..50775a6 --- /dev/null +++ b/README.md @@ -0,0 +1,77 @@ +

+ Advanced Telerobotics Research Lab, Department of Computer Science, Kent State University. +

+ +

+ The ATR-Lab organization's profile page and the default community files for every lab repository.
+ Advanced Telerobotics Research Lab · Department of Computer Science · Kent State University +

+ +

+ License: MIT + Advanced Telerobotics Research Lab, Kent State University + Last reviewed Sept. 2026 +

+ +GitHub treats a repository named `.github` specially: + +- **`profile/README.md` is the organization's front page.** It appears at the top of + [github.com/ATR-Lab](https://github.com/ATR-Lab) for everyone. +- **The community files here are defaults for every ATR-Lab repository** that doesn't have its own: + contributing guide, code of conduct, security policy, support page, issue forms and the pull request template. + A repository that adds its own version of a file (or its own `.github/ISSUE_TEMPLATE/` folder) overrides the + default. + +## Repo map + +| Path | What it is | Shows up | +|---|---|---| +| [`profile/README.md`](profile/README.md) | The organization's front page | github.com/ATR-Lab | +| `profile/assets/` | Header, social preview and icons used by the front page | Front page | +| [`CONTRIBUTING.md`](CONTRIBUTING.md) | How to contribute to any lab repository | "Contributing" link on every repo without its own | +| [`CODE_OF_CONDUCT.md`](CODE_OF_CONDUCT.md) | Community standards and how to report a problem | Every repo without its own | +| [`SECURITY.md`](SECURITY.md) | How to report a vulnerability privately | The "Security" tab of every repo without its own | +| [`SUPPORT.md`](SUPPORT.md) | Where to ask for help | Linked when people open an issue | +| [`.github/ISSUE_TEMPLATE/`](.github/ISSUE_TEMPLATE) | Bug report, feature request and documentation fix forms | "New issue" on every repo without its own | +| [`.github/PULL_REQUEST_TEMPLATE.md`](.github/PULL_REQUEST_TEMPLATE.md) | The pull request checklist | Every new pull request | +| [`AGENTS.md`](AGENTS.md) | Map of the whole organization for coding agents | | + +## Editing + +- The front page must stay short: what the lab is, where to start, current work and links. Use only the + verified facts and wording in the [ATR Lab design skill](https://github.com/ATR-Lab/atr-lab-design-skill) + (`references/brand-foundation.md`). +- Images on the front page use absolute `raw.githubusercontent.com` URLs, because the organization page does not + resolve relative paths. They appear once the change is merged into `main`. +- After editing, run the checks in [`AGENTS.md`](AGENTS.md#how-to-check-your-work). +- **Social preview:** upload `profile/assets/social-preview.png` in **Settings → General → Social preview**. + +## Organization settings to fix by hand + +These live in the organization's settings (**github.com/organizations/ATR-Lab/settings/profile**), not in files: + +| Setting | Today | Change to | +|---|---|---| +| Display name | Missing the "s" in "Telerobotics" | Advanced Telerobotics Research Laboratory | +| Description | Mentions "+400 media outlets" | An innovation research laboratory at Kent State University exploring telepresence robotics, tele-embodiment, autonomy and artificial intelligence. | +| Location | Kent, Ohio, U.S.A | Kent, Ohio | +| Email | none | [a kent.edu lab address] | +| Avatar | | `atr-avatar-mark-navy.png` from the design skill (`assets/logos/icons/`) | + +## License + +Text and code in this repository are released under the [MIT License](LICENSE). The names and logos of the +Advanced Telerobotics Research Lab and Kent State University are trademarks and are not covered by that license. + +--- + +

+ ATR Lab docs · + About the lab · + Getting started · + Dev guidelines · + All things ROS 2 · + All repositories
+ Advanced Telerobotics Research Lab · Department of Computer Science · Kent State University · + www.atr.cs.kent.edu +

diff --git a/SECURITY.md b/SECURITY.md new file mode 100644 index 0000000..410575f --- /dev/null +++ b/SECURITY.md @@ -0,0 +1,31 @@ +# Security policy + +> **Read this when** you think you have found a security vulnerability in an ATR-Lab repository, or in software +> that controls one of the lab's robots. A repository with its own `SECURITY.md` overrides this page. + +Most ATR-Lab repositories are research code. We fix security problems on the default branch; older releases +and branches are not maintained unless a repository says so. + +## Report privately + +Please **do not open a public issue** for a vulnerability. + +1. On the repository, open the **Security** tab and choose **Report a vulnerability**, if private vulnerability + reporting is turned on for that repository. +2. Otherwise, email [security contact email] with "[ATR] Security" at the start of the subject line. + +Include: + +- the repository, branch or commit and the affected file or component; +- what an attacker could do, and the steps to reproduce it; +- whether it could make a robot move unexpectedly or disable a safety feature (we treat those first); +- whether you want to be credited when it is fixed. + +We will acknowledge your report, keep you updated while we work on a fix and credit you if you wish. + +## Kent State systems + +Vulnerabilities in Kent State University systems (FlashLine, university email or networks) are not handled +here. Report them to the university's information security office. + +Last reviewed: Sept. 30, 2026 diff --git a/SUPPORT.md b/SUPPORT.md new file mode 100644 index 0000000..460aceb --- /dev/null +++ b/SUPPORT.md @@ -0,0 +1,16 @@ +# Getting help + +> **Read this when** you are stuck, have a question about an ATR-Lab repository or want to reach the lab. + +| You are | Your question is about | Ask here | +|---|---|---| +| A lab member | Code, robots, lab equipment | [Slack channel], or the repository's issues | +| Anyone | A bug or a missing feature in a repository | That repository's **Issues** tab | +| Anyone | ROS 2 in general | [All things ROS 2](https://github.com/ATR-Lab/all-things-ros2), then [Robotics Stack Exchange](https://robotics.stackexchange.com/) | +| A prospective student, sponsor or partner | Joining or working with the lab | The [lab website](https://www.atr.cs.kent.edu/) | +| A journalist | Interviews and media requests | Kent State University media relations | + +When you ask for help with code, include what you ran, what you expected and the full error message. For robot +problems, include the robot, its firmware or software version and the ROS 2 distribution. + +Last reviewed: Sept. 30, 2026 diff --git a/profile/README.md b/profile/README.md index a46ae92..c1431d2 100644 --- a/profile/README.md +++ b/profile/README.md @@ -1 +1,89 @@ -# .github \ No newline at end of file +

+ Advanced Telerobotics Research Lab, Department of Computer Science, Kent State University: telepresence robotics, tele-embodiment and Physical AI. +

+ +

+ The Advanced Telerobotics Research Lab at Kent State University is an innovation research laboratory focused on exploring the frontiers of telepresence robotics, tele-embodiment, autonomy and artificial intelligence. +

+ +

+ Website · + YouTube · + X @atrlab_kent · + Instagram @atr_lab · + Department of Computer Science +

+ +We build robots that people operate from a distance and Physical AI (AI that senses and acts in the real world through a robot) that works alongside them. Students from high school through doctoral study do the work on real hardware: humanoid, quadruped and social robots, robot arms and immersive teleoperation interfaces. + +## Start here + + + + + + + + +
+
+ About the lab
+ Research, achievements, press kit and members. +
+
+ Getting started
+ Lab rules, safety, research standards, tools and hardware for new members. +
+
+ Dev guidelines
+ Style guides, copy-ready lint configs and Git practices. +
+
+ All things ROS 2
+ Concepts, distributions, installation, commands and debugging. +
+ +## What we work on + +| Area | What it means | +|---|---| +| **Extending human presence** | Robots people operate and inhabit at a distance: telepresence, tele-embodiment and immersive VR and AR teleoperation | +| **Physical AI that works with people** | Service robots, social robots and humanoids that sense, decide and act in real settings alongside people | +| **Learning by building** | Students at every level do research on real hardware and test it in competition | +| **The next generation of innovators** | Hands-on robotics and Physical AI programs for middle and high school students and their teachers | + +## Current projects + +| Project | What it is | Code | +|---|---|---| +| **Expressive Motion** | Learning expressive humanoid locomotion from monocular runway videos, on a Booster K1 humanoid | [expressive-motion](https://github.com/ATR-Lab/expressive-motion) | +| **Coffee Buddy** | An interactive service robot for coffee shops with voice interaction, facial expressions and head tracking (ROS 2) | [kami-head](https://github.com/ATR-Lab/kami-head) | +| **PepperKit** | A SoftBank Pepper robot stack that answers through a realtime large language model voice agent | [PepperKit](https://github.com/ATR-Lab/PepperKit) | +| **VendoBot** | A projection-augmented delivery robot for intent transparency and motion legibility, published in the HRI 2026 Companion proceedings | [Paper](https://dl.acm.org/doi/10.1145/3776734.3794461) | +| **Unitree Go2 workspace** | A ROS 2 workspace for the lab's Unitree Go2 robot dog: vision, human interaction and video streaming | [go2_ws](https://github.com/ATR-Lab/go2_ws) | + +
+Earlier work + +| Project | Years | Code | +|---|---|---| +| TeleBot-4R, the lab's telepresence robot, and its Meta Quest XR interface | 2023-2024 | [TeleBot-4R](https://github.com/ATR-Lab/TeleBot-4R) · [TeleBot-4R-XR](https://github.com/ATR-Lab/TeleBot-4R-XR) | +| AARON, an AR system for spacesuit operations built for NASA SUITS | 2020, 2023 | | +| TeleBot-2 at the World Robot Summit in Tokyo | 2018 | | + +
+ +## Tools we share + +- **[ATR Lab design skill](https://github.com/ATR-Lab/atr-lab-design-skill)**: the lab's brand system (logos, colors, fonts, templates and checking scripts) packaged as a Claude skill. +- **[ROSEnv](https://github.com/MarcoDotIO/rosenv)**: a ROS 2 project and dependency manager with persistent Docker environments and lockfiles, built by a lab member. + +## Work with us + +- **Kent State students:** read [Getting started](https://github.com/ATR-Lab/getting-started-atr-lab), then visit the [lab website](https://www.atr.cs.kent.edu/) to find out how to join. +- **Prospective graduate students:** see the lab website and apply through Kent State University graduate admissions. +- **Contributors:** every repository follows the [contributing guide](https://github.com/ATR-Lab/.github/blob/main/CONTRIBUTING.md) and the [code of conduct](https://github.com/ATR-Lab/.github/blob/main/CODE_OF_CONDUCT.md) unless it has its own. + +

+ Advanced Telerobotics Research Lab · Department of Computer Science · Kent State University · Kent, Ohio +

diff --git a/profile/assets/header.png b/profile/assets/header.png new file mode 100644 index 0000000..d19d3be Binary files /dev/null and b/profile/assets/header.png differ diff --git a/profile/assets/icons/code.png b/profile/assets/icons/code.png new file mode 100644 index 0000000..c26044c Binary files /dev/null and b/profile/assets/icons/code.png differ diff --git a/profile/assets/icons/ros-graph.png b/profile/assets/icons/ros-graph.png new file mode 100644 index 0000000..c668114 Binary files /dev/null and b/profile/assets/icons/ros-graph.png differ diff --git a/profile/assets/icons/student.png b/profile/assets/icons/student.png new file mode 100644 index 0000000..07de809 Binary files /dev/null and b/profile/assets/icons/student.png differ diff --git a/profile/assets/icons/team.png b/profile/assets/icons/team.png new file mode 100644 index 0000000..797136a Binary files /dev/null and b/profile/assets/icons/team.png differ diff --git a/profile/assets/social-preview.png b/profile/assets/social-preview.png new file mode 100644 index 0000000..0b3474d Binary files /dev/null and b/profile/assets/social-preview.png differ