-
Notifications
You must be signed in to change notification settings - Fork 230
Developer Activities: Call for Participation! #123
Description
Description
We welcome contributions!
OceanBase is an open-source distributed database project.
We welcome contributions across code, docs, tests, observability, tooling, and ecosystem integrations.
Invited mentors: @frostming, @yihong0618 . For any questions about the issues below, feel free to reach out to them; they are among the best open-source developers.
This AI Coding activity is a community-wide call for participation. The goal is to help contributors pick a small, well-scoped task, ship a PR, and submit it between Jan 22 - Jan 31 for review and eligibility for rewards (keyboard, dev board, game console).
The awards will be presented on the afternoon of Jan 31; we encourage in-person participation, and if you submit code and win, please tell us how to contact you.
Note: For fairness and reviewer workload, PR reviews will begin on Jan 29, 2026 Feel free to submit earlier.
Awards
- Fastest Merge Award (3 winners): First three PRs merged during the event.
- Most Merges Award (3 winners): Top three contributors with the most PRs merged during the event.
- Hardest PR Award (3 winners): Three PRs selected by mentors as the most challenging and high-impact.
- Best Creativity Award (1 winner): One PR selected for the most creative idea or approach related to seekdb or pyseekdb.
Rules
- One task per PR; keep scope small and reviewable.
- Follow the contributing guide and project style.
- Add or update tests and docs when behavior changes.
- Share progress and questions in this issue so the community can help.
Tip: keep one PR per task or feature to make reviews and CI runs easier.
Before you start
Start with the Contributing Guide
How to participate
1) Pick a task
Browse the task lists below and pick one item you want to work on.
2) Claim it
Comment on this issue to claim a task:
- I want to try this issue.
- Up to two contestants may choose the same issue, but only one will be merged; the first merged PR wins.
Maintainers and mentors will respond with:
- assign you as assignee
- If you need discussion, comment on this issue and @mention the maintainer.
3) Deliver
When you are ready, please provide:
- PR link
- Testing evidence (unit/integration/e2e as required)
- Documentation update if behavior changes
4) Acceptance checklist
- PR title references Task ID
- CI is green
- Tests added/updated
Labels & conventions
Type
type/featuretype/bugtype/refactortype/docs
Tracks & Task List
Legend: difficulty uses emoji to avoid HTML/color issues
🟢 Easy | 🟡 Medium | 🔴 Hard
Track 1 — CAMEL AI — Mentor: @fengju0213
| Issue | Difficulty | Language | Prompt Suggestion | Assignee | PR | Status |
|---|---|---|---|---|---|---|
| Add partitioned table support in OceanBaseStorage | 🟡 | Python | Add partition config to OceanBaseStorage table creation; keep backward compatible; add tests. | @fengju0213 | Todo | |
| Add advanced ANN query options in OceanBase | 🟡 | Python | Expose ANN query params for OceanBase and wire them into query builder; update docs/tests. | @YixinZ-NUS | 3758 | In Review |
| DOC: Add OceanBase Cookbook | 🟢 | Markdown | Write an OceanBase cookbook with setup, config, and example usage. | @fengju0213 | Todo | |
| Update the version of pyobvector | 🟡 | Python | Bump pyobvector version, update constraints, and adjust any API changes with tests. | @fengju0213 @zhangjiongai-debug |
3757 | In Review |
| Prefer create_index with vidx_params in OceanBaseStorage | 🟡 | Python | Switch to create_index with vidx_params, keep backward compatibility, and update tests. | @fengju0213 | Todo |
Track 2 — Dify — Mentor: @crazywoola
| Issue | Difficulty | Language | Prompt Suggestion | Assignee | PR | Status |
|---|---|---|---|---|---|---|
| Update docs for DB_TYPE seekdb/oceanbase | 🟢 | Markdown | Update environments.mdx to include seekdb and oceanbase in DB_TYPE. | @aopstudio | 669 | Done |
Track 3 — Datawhale — Mentor: @FutureUnreal
| Issue | Difficulty | Language | Prompt Suggestion | Assignee | PR | Status |
|---|---|---|---|---|---|---|
| Implement OceanBase vector knowledge base integration for PocketFlow | 🔴 | Python | Build OceanbaseMemory helper with session isolation; add example and unit tests. | @YixinZ-NUS | Assigned | |
| Build an AI app using seekdb MCP | 🟡 | Python | Design a use case, implement MCP-backed search, add demo script and docs. | @flying-dragon-ai | Todo | |
| Build a PowerRAG SDK text QA demo | 🟢 | Python | Implement SDK init, upload/index, query demo, and README. | @pi-dal | 78 | In Review |
Track 4 — FastGPT — Mentor: @c121914yu
| Issue | Difficulty | Language | Prompt Suggestion | Assignee | PR | Status |
|---|---|---|---|---|---|---|
| Add seekdb support and deployment config for FastGPT | 🟡 | TypeScript | Add seekdb backend integration and deployment config; cover config validation and docs. | @flying-dragon-ai | 6338 | In Review |
| Add CI/CD automated tests for vector databases | 🟡 | YAML | Add CI workflows to spin up vector DBs and run integration tests; document env vars. | Todo | ||
| Add OceanBase slow-operation logs and normalize log format | 🟡 | TypeScript | Add structured slow-operation logging for OB and standardize log fields. | @taven-liu | 6331 | Done |
| Add configurable quantization levels for OceanBase vector indexes | 🟡 | TypeScript | Add config for OB vector index quantization levels and validate at startup. | @YixinZ-NUS | Todo | |
| Add PB-to-OB migration scripts | 🟡 | Shell/SQL | Provide migration scripts from PB to OB with safety checks and rollback notes. | Todo |
Track 5 — LangChain — Mentor: @webup
| Issue | Difficulty | Language | Prompt Suggestion | Assignee | PR | Status |
|---|---|---|---|---|---|---|
| Deprecate ChatMessageHistory, migrate to LangGraph checkpointer | 🔴 | Python | Migrate to LangGraph checkpointer; update code paths and tests (LOC TBD). | Todo | ||
| Improve error messages with troubleshooting hints | 🟡 | Python | Improve error messages with troubleshooting hints (LOC TBD). | Todo | ||
| Code quality automation | 🟢 | Python | Add CI automation for linting/formatting/checks (LOC TBD). | Todo | ||
| Developer onboarding improvements | 🟢 | Markdown | Improve onboarding docs and README examples (LOC TBD). | @nileshaher-2024si96522 | 49 | In Review |
| Request API reference and update README with integration status | 🟢 | Markdown | Add API reference links and update README integration status (LOC TBD). | @ShanmukhaRajah22 | 47 | In Review |
| Submit documentation PR to LangChain docs repository | 🟡 | Markdown | Draft integration docs and prepare LangChain docs PR (LOC TBD). | Todo | ||
| Add standard tests to CI workflow | 🟢 | Python | Add standard tests to CI workflow (LOC TBD). | Todo | ||
| Implement LangChain standard integration tests for VectorStore | 🟡 | Python | Implement LangChain integration tests for VectorStore (LOC TBD). | Todo | ||
| Implement LangChain standard unit tests for VectorStore | 🟡 | Python | Implement LangChain unit tests for VectorStore (LOC TBD). | Todo |
Track 6 — RAGFlow — Mentor: @yuzhichang
| Issue | Difficulty | Language | Prompt Suggestion | Assignee | PR | Status |
|---|---|---|---|---|---|---|
| Add OceanBase Support to Text-to-SQL Agent | 🟢 | Python | Add OceanBase support for the Text-to-SQL agent and validate query execution. | @YixinZ-NUS | Todo | |
| Peewee ORM Support for OceanBase as Primary Database | 🟢 | Python | Add PooledOceanBaseDatabase config and enable DB_TYPE=oceanbase. | @zamaoxiaoji | Todo | |
| Add OceanBase Storage Support for Table Parser | 🟡 | Python | Add OceanBase storage support in the table parser and update related configs. | @YixinZ-NUS | Todo | |
| OceanBase Implementation for Memory Subsystem | 🟡 | Python | Implement OceanBase backend for memory storage, vector search, and sessions. | @YixinZ-NUS | Todo | |
| OceanBase Performance Monitoring and Health Check Integration | 🟢 | Python | Add OceanBase performance metrics and health checks in system endpoints. | @Angel98518 | 12886 | Done |
| Storage Engine Performance Benchmarking | 🔴 | Python | Add benchmark scripts comparing ES/Infinity/OceanBase performance. | @YixinZ-NUS | Todo | |
| OceanBase Data Migration Tool | 🔴 | Python | Build migration tooling to move data into OceanBase with schema mapping. | Todo |
Track 7 — powermem — Mentor: @Teingi
| Issue | Difficulty | Language | Prompt Suggestion | Assignee | PR | Status |
|---|---|---|---|---|---|---|
| [Feature]: JavaScript/TypeScript SDK Implementation | 🔴 | TypeScript | Implement native PowerMem SDK for JS/TS; cover core APIs and docs. | Todo | ||
| [Feature]: Go SDK Implementation | 🔴 | Go | Implement native PowerMem SDK for Go; cover core APIs and docs. | @lizzy-0323 | Assigned | |
| [Feature]: Java SDK Implementation | 🔴 | Java | Implement native PowerMem SDK for Java; cover core APIs and docs. | @bupt-lmy | Todo | |
| [Feature]: Memory Statistics and Analytics Dashboard | 🔴 | TypeScript | Build memory stats/analytics dashboard; include trends, usage, and top items. | @zty012 | Todo | |
| [Feature]: Add pyseekdb support as a storage backend | 🟢 | Python | Add pyseekdb as a backend option; update config and docs. | Todo | ||
| [Feature]: PowerMem Chrome Extension Support | 🟢 | TypeScript | Add Chrome extension support for PowerMem; document setup and usage. | Todo | ||
| [Feature]: Command-Line Interface (CLI) Tool | 🟢 | Python | Add a CLI tool for core PowerMem operations with basic docs. | Todo | ||
| [Feature]: Memory Export/Import Functionality | 🟢 | Python | Add import/export for memories; support common formats and docs. | @ayanami-desu | Todo | |
| [Feature]: Enhanced Search Result Sorting Options | 🟢 | Python | Add sorting options for search results (time, importance, frequency, retention). | Todo | ||
| [Feature]: Advanced Search Filters | 🟢 | Python | Add advanced filters for search (time range, importance, type, tags, user). | Todo | ||
| [Feature]: Memory Compression and Deduplication Optimization | 🟢 | Python | Add memory compression/dedup optimization; document behavior. | @Chi-Kai | Todo | |
| [Feature]: Go Client Example for PowerMem HTTP API Server | 🟢 | Go | Add Go client example for the HTTP API server with basic usage. | Todo | ||
| [Feature]: Java Client Example for PowerMem HTTP API Server | 🟢 | Java | Add Java client example for the HTTP API server with basic usage. | @Bruce-Y12 | Todo | |
| [Feature]: JavaScript/TypeScript Client Example for PowerMem HTTP API Server | 🟢 | TypeScript | Add JS/TS client example for the HTTP API server with basic usage. | @Jenny-Jane2019 | Assigned |
Track 8 — seekdb, pyseekdb — Mentor: @hnwyllmm
| Issue | Difficulty | Language | Prompt Suggestion | Assignee | PR | Status |
|---|---|---|---|---|---|---|
| [Enhancement]: test examples in github action | 🔴 | Python | Add CI workflows to run example tests and document required setup. | Todo | ||
| [Enhancement]: use _source keyword to select the fields we want | 🔴 | Python | Implement _source field selection, update query APIs, and add coverage. | @WSL0809 @NTLx |
138 149 |
In Review |
| [Feature]: client tool to debug and manage collections | 🔴 | Python | Design a CLI for collection inspection and management; document usage and add tests. | Todo | ||
| [Enhancement]: test collection name more than 64 characters | 🟢 | Python | Add tests for collection names > 64 chars and ensure validation behavior is clear. | @NTLx | 141 | In Review |
| [Enhancement]: simplify hybrid_search instead of calling get_sql and then execute sql | 🟢 | Python | Refactor hybrid_search to avoid get_sql+execute flow; update tests and docs. | @daybreakcold @aopstudio |
148 | In Review |
| [Enhancement]: format document string | 🟢 | Python | Normalize document string formatting; add test coverage for edge cases. | Todo | ||
| [Enhancement]: version support of document | 🟢 | Python | Add document version support in APIs and persist version metadata with tests. | Todo | ||
| [Enhancement]: delete oracle code in errno.def | 🟢 | C++ | Remove oracle-related entries in errno.def and ensure build/tests still pass. | @chakkk309 | 118 | In Review |
| [Enhancement]: delete the codes oracle related | 🟢 | C++ | Remove oracle-related code paths, update references, and run basic tests. | Todo | ||
| [Bug]: command in toolchain.md return error | 🟢 | Markdown | Fix the failing command in toolchain.md and verify the steps are accurate. | @WZhongyun | Assigned | |
| [Feature]: [embed] print building information | 🟢 | C++ | Add build info output for embed mode and document the new output. | @zamaoxiaoji | 131 | In Review |
| [Enhancement]: Delete the code related with shared storage | 🟢 | C++ | Remove shared-storage related code and update any references or tests. | @NTLx | 141 | In Review |
| delete directory deps/oblib/src/lib/async | 🟢 | C++ | Remove the async directory under deps/oblib and fix any build references. | @Rynzie02 | 127 | Done |
| delete code check_os_params | 🟢 | C++ | Remove check_os_params code and update dependent references. | @Rynzie02 | 125 | In Review |
| We should always print the statistic information of memory allocation | 🟢 | C++ | Ensure memory allocation stats are always printed; add a small test or doc note. | @Zhangg7723 | 137 | In Review |
| [Enhancement]: Too many log 'ls service is valid' | 🟢 | C++ | Reduce noisy 'ls service is valid' logs or gate them behind a debug level. | @Rynzie02 | 130 | In Review |
| [Bug]: Unexpected warning information when executing call dbms_ai_service.create_ai_model | 🔴 | C++ | Fix unexpected warnings from create_ai_model and add regression tests. | @WSL0809 | 132 | In Review |
| [Bug]: When a model conforms to the OpenAI protocol, setting the provider of some models to OpenAI results in an error. | 🔴 | C++ | Diagnose OpenAI provider selection errors and add coverage for model configs. | @WSL0809 | 134 | In Review |
| [Enhancement]: AI Function error messages are not clear | 🔴 | C++ | Improve AI function error messages and ensure consistent formatting. | Todo | ||
| [Feature]: [embedded] Support parameterized query | 🔴 | C++ | Add parameterized query support in embedded mode with tests. | @zamaoxiaoji | Todo | |
| [Enhancement]: [embed] return meaningful error message to user | 🔴 | C++ | Improve embed error messages and add tests for common failures. | Todo | ||
| Add explicit UV CLI workflow for pyseekdb | 🟡 | Python | Document UV CLI usage, ensure uv build works, and add optional CI check. | @zhangjiongai-debug | 154 | In Review |
| test all special characters for all fields | 🟡 | Python | test all special characters for all fields | TODO | ||
| Support Text2Vec embedding function | 🟡 | Python | integrate Text2Vec embedding function in pyseekdb | @NTLx | 142 | In Review |
| Integrate Mistral embedding function | 🟡 | Python | Integrate Mistral embedding function in pyseekdb | @chakkk309 | 153 | In Review |
| Integrate morphllm embedding function | 🟡 | Python | Integrate morphllm embedding function in pyseekdb | @chakkk309 | 143 | In Review |
| refactor DefaultEmbeddingFunction class | 🟡 | Python | Split DefaultEmbeddingFunction into two classes | TODO |
Track 9 — WasmEdge — Mentor: @MileyFu
| Issue | Difficulty | Language | Prompt Suggestion | Assignee | PR | Status |
|---|---|---|---|---|---|---|
| [Deploy] Optimize TTS pool | 🟡 | Rust | Optimize the TTS session pool; implement idle/max workers and idle timeout. Use RustCoder: https://github.com/cardea-mcp/RustCoder. | Todo | ||
| Improve EchoKit server SKILL docs | 🟢 | Markdown | Improve SKILL docs and verify examples. | Todo | ||
| [MCP] Implement seekdb Search MCP Server | 🟡 | Rust | Build a minimal MCP server with search tool and OB vector query. | @YixinZ-NUS | 41 | In Review |
| [DevTools] Add seekdb Skill for Claude Code | 🟢 | Prompt/JSON | Add seekdb skill or .clauderc rules for config.toml generation. | @NTLx | 40 | In Review |
| [Prompts] Add seekdb system prompts (CN/EN) | 🟢 | Text | Add seekdb_cn.txt and seekdb_en.txt with assistant prompts. | Todo |
Track 10 — Ant Ling — Mentor: @cafe3310
| Issue | Difficulty | Language | Prompt Suggestion | Assignee | PR | Status |
|---|---|---|---|---|---|---|
| [Doc] Add OceanBase Integration Example and Documentation | 🟡 | Python/Markdown | Add an OceanBase example script and quickstart doc, and link it from README. | Todo | ||
| [Doc] Improve documentation for problem_generation.sh | 🟢 | Markdown | Add clear parameter documentation and usage notes for problem_generation.sh and related scripts. | @pi-dal | 13 | In Review |
| Add .env Configuration Support and Validation | 🟡 | Python/Markdown | Add .env.example, validation script, dependency, and README configuration section. | @pi-dal | 14 | In Review |
| Add Interactive Quickstart Notebook | 🟢 | Jupyter | Add a quickstart notebook, sample data, and README link. | @WZhongyun | Assigned | |
| Add OceanBase deployment guide | 🟢 | Markdown | Add docs for OceanBase setup, schema init, verification script, and docs links. | Todo |
Track 11 — TEN Framework — Mentor: @plutoless
| Issue | Difficulty | Language | Prompt Suggestion | Assignee | PR | Status |
|---|---|---|---|---|---|---|
| [FEATURE] [OceanbaseDeveloperChallenge] a Memory-Enabled Voice AI UseCase with TEN + PowerMem | 🟡 | Python | Build a memory-enabled voice AI use case integrating TEN and PowerMem; provide runnable demo steps and validation notes. | Todo | ||
| [FEATURE] [OceanDeveloperChallenge] Write Docs: Understanding Memory-Enabled Voice AI with TEN + PowerMem | 🟢 | Markdown | Write clear docs explaining the architecture, data flow, and setup steps for the TEN + PowerMem voice AI use case. | Todo |
Status definitions
Todo— open to claimAssigned— claimed and under developmentIn Review— PR opened, under reviewDone— mergedOn Hold— blocked (needs maintainer action / upstream dependency)
FAQ
If you are contributing to ecosystem integrations, please read that project’s contributing guide before opening PRs or issues there:
- Dify: CONTRIBUTING.md
- Dify Docs: CONTRIBUTING.md
- RAGFlow: Contributing
- FastGPT: Contributing
- CAMEL-AI: CONTRIBUTING.md
- seekdb: CONTRIBUTING.md
- pyseekdb: CONTRIBUTING.md
- PowerMem: CONTRIBUTING.md
- LangChain: Contributing Guide
- Datawhale all-in-rag: Contributing
- WasmEdge: CONTRIBUTING.md
- EchoKit Server: CONTRIBUTING.md