ADFA-4589 | Add suite of AI-powered developer plugins for Code on the Go#41
ADFA-4589 | Add suite of AI-powered developer plugins for Code on the Go#41jatezzz wants to merge 13 commits into
Conversation
There was a problem hiding this comment.
Claude Code Review
This repository is configured for manual code reviews. Comment @claude review for a one-time review, or @claude review always to subscribe this PR to a review on every future push.
Tip: disable this comment in your organization's Code Review settings.
e1a6598 to
4986735
Compare
|
Might be too early to properly review this. They all need version ranges, html documentation, tier 1/2/3 help, and README.md. CoroutineScope(Dispatchers.IO) and never gets cancel() in dispose(). @volatile static pluginContext never cleared, native model never unloaded, llama executor never shut down. ai-assistant has security problems
We also need the new plugin api jar otherwise these won't build. |
fc375e7 to
d022464
Compare
Inline ghost-text AI code completions; restored onto main's split layout.
Voice-to-code speech input; restored onto main's split layout.
Semantic code search via embeddings; restored onto main's split layout.
… Downloads Stream the selected content:// URI into a private cache file; drop the Downloads fallback that silently loaded the wrong model (ADFA-4388).
…shing Add GgufModelInspector + UserFeedback; classify the .gguf and throw IncompatibleModelException before native decode SIGABRTs the IDE (ADFA-4388).
….5-flash listModels now queries the live v1beta ListModels catalog (generateContent-only); default bumped to gemini-2.5-flash and retired models migrated on load.
Readable settings title; real model name shown and persisted across reopen; and the chat backend indicator + routing now follow the selected backend, refreshing when the settings dialog closes.
…ggestion-plugin and vector-search-plugin names
c9ce9b8 to
9f7c87e
Compare
- Add version ranges, README/docs, and tiered help coverage for AI plugins - Cancel plugin coroutine scopes during disposal - Move Gemini listModels API key from URL query to x-goog-api-key header - Document Gemini API key storage tradeoff and remove misleading encryption note - Update AI plugin review status with verification results
|
@hal-eisen-adfa Thanks for the feedback, I've addressed all the concers, attached the proof that the new plugins build with the new Code On the Go plugin api.
https://github.com/appdevforall/plugin-examples/actions/runs/29523333464 |
|
Almost everything is now fixed. One big gap that wasn't addressed yet: LLamaAndroid needs to expose a shutdown that calls (runLoop as ExecutorCoroutineDispatcher).close() / executor.shutdown(), invoked from AiCorePlugin.dispose(). |
LLamaAndroid's single-thread run-loop executor was never shut down, so the non-daemon Llm-RunLoop thread outlived the plugin and pinned its classloader. Expose LLamaAndroid.shutdown() (closes the ExecutorCoroutineDispatcher) and call it from LocalLlmBackend.close() after the model unload completes. Regenerate the prebuilt llama AAR so the new API is visible to the plugin build.




Description
Adds four reference AI plugins that bring AI-assisted development directly into the CoGo IDE:
ai-coreother plugins build on.getEmbeddings()added to ai-core).Details
document_5073463760878832078.mp4
Ticket
ADFA-4589
Observation
llama.cppis a submodule, reviewers must rungit submodule update --init ai-assistant/subprojects/llama.cpp(needs SSH access to the private fork).libs/*.jarare normally CI-managed; they're included here because the new plugins depend on refreshed editor APIs.ai-assistant/folder still contains build artifacts (*.cgp) and internal working docs, flag if these should be stripped before merge.