Repository Analysis

pipecat-ai/pipecat

Open Source framework for voice agents, multimodal apps, and realtime AI. Maintained by Daily and the community.

36.4 Strong AI signal View on GitHub

Analysis Overview

This report presents the forensic synthetic code analysis of pipecat-ai/pipecat, a Python project with 14,909 GitHub stars. SynthScan v2.0 examined 382,235 lines of code across 1446 source files, recording 8208 pattern matches distributed across 26 syntactic categories. The overall adjusted score of 36.4 places this repository in the Strong AI signal band.

The scanner applied 160+ deterministic lexical heuristics, multi-line block detectors, abstract syntax tree depth profilers, and a cross-file Jaccard similarity matrix to construct a statistically normalised synthetic code estimate. All matches are individually weighted by severity coefficient and contextual multiplier before summation, and the resulting headline score is temporally discounted to account for the repository's development history relative to the commercial emergence of large language model coding tooling (November 2022 onward).

36.4
Adjusted Score
36.4
Raw Score
100%
Time Factor
2026-08-28
Last Push
14.9K
Stars
Python
Language
382.2K
Lines of Code
1.4K
Files
8.2K
Pattern Hits
2026-08-29
Scan Date
0.80
HC Hit Rate

What These Metrics Mean

Adjusted Score
Primary synthetic code indicator. Raw score normalised per 1,000 lines of code and multiplied by the temporal discount factor. This is the definitive comparative metric — use it to rank repositories by AI authorship density.
Raw Score
The unmodified sum of all severity-weighted, context-multiplied pattern match scores before temporal discounting. Reflects the absolute signal strength independent of when the repository was last active.
Time Factor
The temporal discount multiplier (0–100%) applied to the raw score. Repositories last updated before ChatGPT's launch (Nov 2022) receive a 5% factor. Full signal is only assigned to repositories active in the post-adoption era (Jan 2024+).
Pattern Hits
Total count of individual pattern matches across all files and categories. A high hit count with a low score may indicate a very large codebase with isolated AI snippets; a low count with a high score indicates dense, concentrated AI signatures.
HC Hit Rate
High+Critical pattern hits per file, averaged across the repository. This orthogonal signal catches repositories where a few files are densely packed with high-severity AI tells — a strong indicator even when the normalised score appears moderate due to codebase size.
Lines of Code / Files
Total lines and files analysed. The scanner examines 94 file extensions. These denominators are used to normalise the score, enabling fair comparison between repositories of vastly different sizes.

Score History

This chart maps the temporal evolution of the adjusted synthetic code score across successive scan runs. An upward trajectory indicates ongoing incorporation of AI-generated code or expanding LLM-assisted scaffolding; a stable or declining trajectory may reflect active human refactoring, code removal, or the adoption of stricter authorship policies. The dashed secondary line (right axis) independently tracks total raw pattern hit count, which can diverge from the normalised score when codebase size changes significantly between scans.

Severity Breakdown

Classifies detected patterns by their diagnostic confidence and structural impact. CRITICAL patterns (coefficient 10) represent definitive synthetic signatures — hallucinated imports, explicit LLM attribution metadata — virtually never produced by human authors. HIGH (5) indicates strong structural tells such as cross-file repetition or cross-linguistic idioms. MEDIUM (2) covers recognisable conversational padding and AI-specific vocabulary. LOW (1) captures subtle indicators like tautological comments and generic boilerplate that require density to carry independent signal.

CRITICAL 14HIGH 1149MEDIUM 603LOW 6442

Directory Score Breakdown

This horizontal bar chart decomposes the repository's raw synthetic code score by top-level directory, allowing you to pinpoint precisely which modules or components carry the highest AI authorship density. Directories with disproportionately high scores relative to their size warrant targeted manual review: concentrated AI signatures often trace back to mass-generated configuration layers, auto-ported test suites, LLM-scaffolded boilerplate classes, or entire subsystems authored under heavy copilot assistance. Use this view to prioritise your human code-review effort.

Pattern Findings

The scanner identified 8208 distinct pattern matches across 26 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a statistically significant AI authorship indicator. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.

Reading the findings table: The Severity column indicates the diagnostic confidence level (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — comment-context matches receive a ×1.5 weight because LLMs systematically over-annotate. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier as dense clusters constitute far stronger evidence of synthetic authorship than isolated hits.

Cross-File Repetition1057 hits · 5285 pts
SeverityFileLineSnippetContext
HIGHCHANGELOG.md0write a long research report on a topic. args: topic: what the report should cover.STRING
HIGH…ion-calling/function-calling-openai-responses-async.py0write a long research report on a topic. args: topic: what the report should cover.STRING
HIGH…ples/function-calling/function-calling-google-async.py0write a long research report on a topic. args: topic: what the report should cover.STRING
HIGH…ples/function-calling/function-calling-openai-async.py0write a long research report on a topic. args: topic: what the report should cover.STRING
HIGH…s/function-calling/function-calling-anthropic-async.py0write a long research report on a topic. args: topic: what the report should cover.STRING
HIGHCONTRIBUTING.md0get the output audio sample rate. returns: the output sample rate in hz.STRING
HIGHsrc/pipecat/transports/base_input.py0get the output audio sample rate. returns: the output sample rate in hz.STRING
HIGHsrc/pipecat/transports/base_output.py0get the output audio sample rate. returns: the output sample rate in hz.STRING
HIGHsrc/pipecat/transports/lemonslice/transport.py0get the output audio sample rate. returns: the output sample rate in hz.STRING
HIGHsrc/pipecat/transports/tavus/transport.py0get the output audio sample rate. returns: the output sample rate in hz.STRING
HIGHsrc/pipecat/services/heygen/client.py0get the output audio sample rate. returns: the output sample rate in hz.STRING
HIGHsrc/pipecat/transports/daily/transport.py0get the output audio sample rate. returns: the output sample rate in hz.STRING
HIGHsrc/pipecat/audio/vad/vad_analyzer.py0get the output audio sample rate. returns: the output sample rate in hz.STRING
HIGHCOMMUNITY_INTEGRATIONS.md0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/lmnt/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/cartesia/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/cartesia/turns/stt.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/inworld/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/asyncai/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/speechmatics/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/azure/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/rime/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/google/stt.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/google/gemini_live/stt.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/speechify/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/soniox/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/soniox/stt.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/deepgram/stt.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/deepgram/flux/stt_base.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/deepgram/sagemaker/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/deepgram/sagemaker/stt.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/camb/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/groq/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/tavus/video.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/smallest/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/minimax/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/elevenlabs/tts_base.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/elevenlabs/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/neuphonic/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/gradium/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/piper/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/nvidia/sagemaker/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/nvidia/sagemaker/stt.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/bland/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/resembleai/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/sarvam/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/sarvam/stt.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/xtts/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/aws/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/fish/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/mistral/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/openai/tts.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/openai/base_llm.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHsrc/pipecat/services/openai/stt.py0check if this service can generate processing metrics. returns: true, as fish audio service supports metrics generation.STRING
HIGHtests/test_deepgram_tts.py0build the exception `websockets` raises when a handshake is rejected.STRING
HIGHtests/test_websocket_service_usable.py0build the exception `websockets` raises when a handshake is rejected.STRING
HIGHtests/test_processor_usable.py0build the exception `websockets` raises when a handshake is rejected.STRING
HIGHtests/test_cartesia_stt.py0build the exception `websockets` raises when a handshake is rejected.STRING
HIGHtests/test_auto_register_tools.py0get a restaurant recommendation. args: location: the city and state, e.g. "san francisco, ca".STRING
HIGHexamples/function-calling/function-calling-cerebras.py0get a restaurant recommendation. args: location: the city and state, e.g. "san francisco, ca".STRING
997 more matches not shown…
Hyper-Verbose Identifiers4933 hits · 4621 pts
SeverityFileLineSnippetContext
LOWCHANGELOG.md13601 async def on_conversation_item_created(llm, item_id, item):CODE
LOWCHANGELOG.md13605 async def on_conversation_item_updated(llm, item_id, item):CODE
LOWtests/test_async_tool_messages.py61 def test_parses_completed_sentinel_result(self):CODE
LOWtests/test_async_tool_messages.py70 def test_returns_none_for_regular_user_message(self):CODE
LOWtests/test_async_tool_messages.py73 def test_returns_none_for_regular_assistant_message(self):CODE
LOWtests/test_async_tool_messages.py76 def test_returns_none_for_regular_tool_message(self):CODE
LOWtests/test_async_tool_messages.py91 def test_returns_none_for_developer_message_without_payload(self):CODE
LOWtests/test_async_tool_messages.py100 def test_returns_none_for_invalid_json_content(self):CODE
LOWtests/test_async_tool_messages.py103 def test_returns_none_for_non_dict_json(self):CODE
LOWtests/test_async_tool_messages.py106 def test_returns_none_for_wrong_payload_type(self):CODE
LOWtests/test_async_tool_messages.py117 def test_returns_none_when_tool_call_id_missing(self):CODE
LOWtests/test_async_tool_messages.py128 def test_returns_none_when_status_invalid(self):CODE
LOWtests/test_async_tool_messages.py141 def test_returns_none_for_non_string_content(self):CODE
LOWtests/test_async_tool_messages.py150 def test_returns_none_for_missing_role(self):CODE
LOWtests/test_async_tool_messages.py157 def test_started_message_shape(self):CODE
LOWtests/test_async_tool_messages.py170 def test_intermediate_message_shape(self):CODE
LOWtests/test_async_tool_messages.py194 def test_final_message_with_completed_sentinel(self):CODE
LOWtests/test_async_tool_messages.py207 def test_cancelled_message_shape(self):CODE
LOWtests/test_async_tool_messages.py218 def test_cancelled_round_trip(self):CODE
LOWtests/test_async_tool_messages.py238 def test_intermediate_round_trip(self):CODE
LOWtests/test_ttfb_metrics.py36 async def test_reports_a_normal_interval(self):CODE
LOWtests/test_ttfb_metrics.py50 async def test_does_not_report_output_that_predates_the_request(self):CODE
LOWtests/test_ttfb_metrics.py59 async def test_a_refused_measurement_does_not_linger(self):CODE
LOWtests/test_ttfb_metrics.py74 async def test_reports_nothing_when_no_measurement_is_running(self):CODE
LOWtests/test_ttfb_metrics.py105 async def test_measures_to_the_last_transcript(self, service):CODE
LOWtests/test_ttfb_metrics.py114 async def test_a_transcript_from_before_speech_ended_reports_nothing(self, service):CODE
LOWtests/test_ttfb_metrics.py134 async def test_an_utterance_with_no_transcript_at_all_reports_nothing(self, service):CODE
LOWtests/test_ttfb_metrics.py143 async def test_an_utterance_with_no_transcript_closes_the_measurement(self, service):CODE
LOWtests/test_nova_sonic_usage_metrics.py36 def test_can_generate_metrics(self):CODE
LOWtests/test_nova_sonic_usage_metrics.py41 async def test_usage_event_reports_collapsed_delta(self):CODE
LOWtests/test_nova_sonic_usage_metrics.py71 async def test_usage_event_with_no_tokens_is_skipped(self):CODE
LOWtests/test_nova_sonic_usage_metrics.py92 async def test_usage_event_with_missing_details_is_safe(self):CODE
LOWtests/test_openai_realtime_reasoning.py32def test_session_properties_accepts_reasoning_object():CODE
LOWtests/test_openai_realtime_reasoning.py38def test_session_properties_coerces_reasoning_dict():CODE
LOWtests/test_openai_realtime_reasoning.py45def test_reasoning_accepts_future_effort_strings():CODE
LOWtests/test_openai_realtime_reasoning.py51def test_reasoning_serializes_into_session_update():CODE
LOWtests/test_openai_realtime_reasoning.py89async def test_outgoing_session_update_strips_reasoning_on_unsupported_model():CODE
LOWtests/test_openai_realtime_reasoning.py119async def test_outgoing_session_update_keeps_reasoning_on_supported_model():CODE
LOWtests/test_openai_realtime_reasoning.py143async def test_supported_model_variant_keeps_reasoning():CODE
LOWtests/test_openai_realtime_reasoning.py168async def test_no_warning_when_reasoning_is_unset_on_unsupported_model():CODE
LOWtests/test_openai_realtime_reasoning.py193async def test_runtime_settings_update_with_reasoning_triggers_session_update():CODE
LOWtests/test_openai_realtime_reasoning.py224async def test_runtime_settings_update_strips_reasoning_on_unsupported_model():CODE
LOWtests/test_markdown_text_filter.py17 async def test_basic_markdown_removal(self):CODE
LOWtests/test_markdown_text_filter.py59 async def test_repeated_character_removal(self):STRING
LOWtests/test_markdown_text_filter.py81 async def test_preserve_repeated_characters(self):CODE
LOWtests/test_markdown_text_filter.py96 async def test_numbered_list_preservation(self):CODE
LOWtests/test_markdown_text_filter.py113 async def test_html_entity_conversion(self):CODE
LOWtests/test_markdown_text_filter.py167 async def test_numbered_list_marker_handling(self):CODE
LOWtests/test_markdown_text_filter.py185 async def test_inline_code_handling(self):CODE
LOWtests/test_markdown_text_filter.py199 async def test_simple_table_removal(self):CODE
LOWtests/test_markdown_text_filter.py283 async def test_closed_atx_header_stripping(self):CODE
LOWtests/test_markdown_text_filter.py300 async def test_header_trailing_space_preserved(self):CODE
LOWtests/test_markdown_text_filter.py318 async def test_hash_in_content_not_treated_as_header(self):CODE
LOWtests/test_shared.py71 async def test_only_the_first_owner_runs_the_body(self):CODE
LOWtests/test_shared.py78 async def test_later_owners_wait_for_the_first(self):CODE
LOWtests/test_shared.py90 async def test_only_the_last_owner_undoes_it(self):CODE
LOWtests/test_shared.py101 async def test_release_without_acquire_does_nothing(self):CODE
LOWtests/test_shared.py109 async def test_resources_are_counted_separately(self):CODE
LOWtests/test_shared.py124 async def test_instances_count_their_own_owners(self):CODE
LOWtests/test_shared.py134 async def test_first_owner_gets_the_return_value(self):CODE
4873 more matches not shown…
Decorative Section Separators384 hits · 1323 pts
SeverityFileLineSnippetContext
MEDIUMtests/test_openai_realtime_reasoning.py27# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_reasoning.py29# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_reasoning.py58# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_reasoning.py60# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_reasoning.py187# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_reasoning.py189# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_moq_transport.py469# ----------------------------------------------------------------------COMMENT
MEDIUMtests/test_moq_transport.py471# ----------------------------------------------------------------------COMMENT
MEDIUMtests/test_moq_transport.py709# ----------------------------------------------------------------------COMMENT
MEDIUMtests/test_moq_transport.py711# ----------------------------------------------------------------------COMMENT
MEDIUMtests/test_moq_transport.py57# ----------------------------------------------------------------------COMMENT
MEDIUMtests/test_moq_transport.py59# ----------------------------------------------------------------------COMMENT
MEDIUMtests/test_moq_transport.py154# ----------------------------------------------------------------------COMMENT
MEDIUMtests/test_moq_transport.py156# ----------------------------------------------------------------------COMMENT
MEDIUMtests/test_moq_transport.py372# ----------------------------------------------------------------------COMMENT
MEDIUMtests/test_moq_transport.py374# ----------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_init.py59# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_init.py61# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_init.py90# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_init.py92# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_init.py138# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_init.py140# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_init.py161# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_init.py163# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py31# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py33# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py152# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py154# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py193# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py195# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py225# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py227# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py279# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py281# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py322# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_audio_frames.py324# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_usage_metrics.py26# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_usage_metrics.py28# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_usage_metrics.py112# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_realtime_usage_metrics.py114# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_elevenlabs_tts.py275# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_elevenlabs_tts.py282# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_elevenlabs_tts.py411# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_elevenlabs_tts.py418# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_language.py71# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_language.py73# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_language.py118# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_language.py120# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_language.py160# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_language.py162# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_language.py207# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_language.py209# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_language.py24# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_service_language.py26# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_responses_http.py138# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_responses_http.py140# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_responses_http.py239# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_responses_http.py241# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_responses_http.py529# ---------------------------------------------------------------------------COMMENT
MEDIUMtests/test_openai_responses_http.py531# ---------------------------------------------------------------------------COMMENT
324 more matches not shown…
Excessive Try-Catch Wrapping656 hits · 688 pts
SeverityFileLineSnippetContext
LOWCOMMUNITY_INTEGRATIONS.md627except Exception as e:CODE
LOWtests/test_service_init.py80 except Exception:CODE
LOWtests/test_service_init.py175 except Exception:CODE
LOWtests/test_pgmq_bus.py30except Exception:CODE
LOWtests/test_fastapi_websocket.py176 except Exception:CODE
MEDIUMtests/test_fastapi_websocket.py172def receive_loop():CODE
LOWtests/test_pgmq_backends.py35except Exception:CODE
LOWtests/openclaw_fake_gateway.py143 except Exception:CODE
LOWtests/test_redis_bus.py27except Exception:CODE
LOWdocs/api/conf.py355 except Exception as e:CODE
LOWexamples/transcription/transcription-google-llm.py187 except Exception as e:STRING
LOWexamples/features/features-gpu-container-local-bot.py153 except Exception as e:CODE
MEDIUMexamples/features/features-gpu-container-local-bot.py135def on_app_message(transport, message, sender):CODE
LOWexamples/multi-worker/code-assistant/code_worker.py84 except Exception as e:CODE
LOWexamples/multi-worker/code-assistant/code_worker.py106 except Exception as e:CODE
LOWexamples/rag/rag-mem0.py99 except Exception as e:CODE
LOWexamples/realtime/realtime-gemini-live-files-api.py155 except Exception as e:STRING
LOWexamples/realtime/realtime-gemini-live-files-api.py228 except Exception as e:STRING
LOWexamples/realtime/realtime-gemini-live-files-api.py235 except Exception as e:STRING
LOWexamples/voice/voice-aws-strands.py110 except Exception as e:CODE
LOW…les/persistent-context/persistent-context-anthropic.py86 except Exception as e:CODE
LOW…les/persistent-context/persistent-context-anthropic.py104 except Exception as e:CODE
LOW…sistent-context/persistent-context-openai-responses.py86 except Exception as e:CODE
LOW…sistent-context/persistent-context-openai-responses.py105 except Exception as e:CODE
LOW…amples/persistent-context/persistent-context-gemini.py115 except Exception as e:CODE
LOW…amples/persistent-context/persistent-context-gemini.py136 except Exception as e:CODE
LOW…rsistent-context/persistent-context-openai-realtime.py90 except Exception as e:CODE
LOW…rsistent-context/persistent-context-openai-realtime.py113 except Exception as e:CODE
LOW…amples/persistent-context/persistent-context-openai.py86 except Exception as e:CODE
LOW…amples/persistent-context/persistent-context-openai.py105 except Exception as e:CODE
LOW…nt-context/persistent-context-openai-responses-http.py86 except Exception as e:CODE
LOW…nt-context/persistent-context-openai-responses-http.py105 except Exception as e:CODE
LOW…ersistent-context/persistent-context-aws-nova-sonic.py106 except Exception as e:CODE
LOW…ersistent-context/persistent-context-aws-nova-sonic.py143 except Exception as e:CODE
LOW…persistent-context/persistent-context-grok-realtime.py90 except Exception as e:CODE
LOW…persistent-context/persistent-context-grok-realtime.py109 except Exception as e:CODE
LOW…urn-management/turn-management-user-assistant-turns.py78 except Exception as e:CODE
LOWscripts/check_licenses.py108 except Exception as e: # noqa: BLE001 — retry any fetch/parse hiccupCODE
LOWscripts/cli/configs/config_generator.py112 except Exception as e:CODE
LOWscripts/cli/configs/config_generator.py280 except Exception as e:CODE
LOWscripts/daily/mock_tavus_server.py213 except Exception as e:CODE
MEDIUMscripts/daily/mock_tavus_server.py21def set_result(future, *args):CODE
LOWscripts/provider-watch/probe.py467 except Exception as e: # constructor rejected something — that is a findingCODE
LOWscripts/provider-watch/probe.py493 except Exception as e:CODE
LOWscripts/provider-watch/probe.py670 except Exception as e:CODE
LOWscripts/provider-watch/probe.py726 except Exception as e: # network or unknown packageCODE
LOWscripts/provider-watch/inventory.py315 except Exception:CODE
MEDIUMscripts/provider-watch/inventory.py311def _registry_by_class() -> dict[str, dict]:CODE
MEDIUMscripts/krisp/test_krisp_viva_filter_audiofile.py31 print(f"Error: Missing required dependencies: {e}")CODE
MEDIUMscripts/krisp/test_krisp_viva_filter_audiofile.py47 print(f"Error: Could not import Krisp VIVA filter: {e}")CODE
MEDIUMscripts/krisp/test_krisp_viva_filter_audiofile.py58 print(f"Error: {env_var} environment variable not set")CODE
MEDIUMscripts/krisp/test_krisp_viva_filter_audiofile.py64 print(f"Error: Model file not found: {model_path}")CODE
MEDIUMscripts/krisp/test_krisp_viva_filter_audiofile.py83 print(f"Error: TTS model file not found: {path}")CODE
MEDIUMscripts/krisp/test_krisp_viva_filter_audiofile.py258 print("Error: No filtered audio produced")CODE
MEDIUMscripts/krisp/test_krisp_viva_filter_audiofile.py341 print(f"Error: Input file not found: {args.input}")STRING
MEDIUMscripts/krisp/test_krisp_viva_turn_audiofile.py29 print(f"Error: Missing required dependencies: {e}")CODE
MEDIUMscripts/krisp/test_krisp_viva_turn_audiofile.py45 print(f"Error: Could not import Krisp VIVA turn analyzer: {e}")CODE
MEDIUMscripts/krisp/test_krisp_viva_turn_audiofile.py56 print(f"Error: {env_var} environment variable not set")CODE
MEDIUMscripts/krisp/test_krisp_viva_turn_audiofile.py62 print(f"Error: Model file not found: {model_path}")CODE
MEDIUMscripts/krisp/test_krisp_viva_turn_audiofile.py311 print(f"Error: Input file not found: {args.input}")STRING
596 more matches not shown…
Docstring Block Structure75 hits · 375 pts
SeverityFileLineSnippetContext
HIGH.claude/skills/docstring/SKILL.md136One-line summary of what method does. [Longer description if behavior isn't obvious.] Args: param1: DeSTRING
HIGH.claude/skills/cleanup/SKILL.md104Process incoming data with optional configuration. Args: data: The input data to process. options: STRING
HIGHexamples/flows/utils.py18Create an LLM service instance based on environment configuration. Args: provider: LLM provider name. If NoSTRING
HIGHscripts/krisp/audio_file_utils.py14Read an audio file and convert to int16 mono format. This function: - Detects the audio format from the file heSTRING
HIGHsrc/pipecat/pipeline/job_context.py72Fold the deprecated per-argument job spelling into a params object. Dispatch methods accept a params object and, unSTRING
HIGHsrc/pipecat/evals/services.py28Coerce a config's optional ``language`` value to a :class:`Language`. ``Language`` is a ``StrEnum``, so both a codeSTRING
HIGHsrc/pipecat/evals/scenario.py445Parse a scenario YAML file into an :class:`EvalScenario`. Args: path: Path to a YAML file with the STRING
HIGHsrc/pipecat/evals/judge.py138Build an :class:`EvalJudge` from a scenario's ``judge.eval:`` config block. Honors a custom ``factory`` (dottedSTRING
HIGHsrc/pipecat/runner/run.py1581Parse ICE server configuration into a list of plain dictionaries. Accepts either the raw ``PIPECAT_ICE_SERVERS`` enSTRING
HIGHsrc/pipecat/runner/utils.py114Parse telephony WebSocket messages and return transport type and call data. Args: websocket: FastAPI WebSocSTRING
HIGHsrc/pipecat/runner/utils.py463Get transport parameters from factory function. Args: transport_key: The transport key to look up tSTRING
HIGHsrc/pipecat/runner/utils.py601Create a transport from runner arguments using factory functions. This function uses the clean transport_params facSTRING
HIGHsrc/pipecat/runner/daily.py93Configure Daily room URL and token with optional SIP capabilities. This function will either: 1. Use an existinSTRING
HIGHsrc/pipecat/runner/livekit.py144Configure LiveKit room with command-line argument parsing. Args: parser: Optional argument parser. If None,STRING
HIGHsrc/pipecat/transports/lemonslice/api.py55Create a new session with the specified agent_id, agent_image_url, or agent_image. Args: agent_imagSTRING
HIGHsrc/pipecat/transports/smallwebrtc/transport.py102Add audio bytes to the buffer for transmission. Args: audio_bytes: Raw audio data to queue for tranSTRING
HIGHsrc/pipecat/transports/smallwebrtc/transport.py265Convert a video frame to RGB format based on the input format. Args: frame_array: The input frame aSTRING
HIGHsrc/pipecat/transports/smallwebrtc/request_handler.py165Handle a SmallWebRTC request and resolve the pending answer. This method will: - Reuse an existing WeSTRING
HIGHsrc/pipecat/transports/daily/utils.py272Create a new Daily room. Args: params: Room configuration parameters. Returns: STRING
HIGHsrc/pipecat/transports/daily/utils.py309Generate a meeting token for user to join a Daily room. Args: room_url: Daily room URL. STRING
HIGHsrc/pipecat/transports/daily/utils.py378Delete a room using its name. Args: room_name: Name of the room to delete. Returns: STRING
HIGHsrc/pipecat/transports/livekit/utils.py68Delete a LiveKit room by name. This will forcibly disconnect all participants currently in the room. ASTRING
HIGHsrc/pipecat/transports/whatsapp/client.py132Handle a verify webhook request from WhatsApp. Args: params: Dictionary containing webhook parameteSTRING
HIGHsrc/pipecat/transports/whatsapp/client.py193Handle a webhook request from WhatsApp. This method processes incoming webhook requests and handles both STRING
HIGHsrc/pipecat/transports/whatsapp/client.py318Handle a CONNECT event by establishing WebRTC connection and accepting the call. This method: 1. CreateSTRING
HIGHsrc/pipecat/tests/utils.py137Run a test pipeline with the specified processor and validate frame flow. This function creates a test pipeline witSTRING
HIGHsrc/pipecat/utils/types.py78Extract a value that must have been provided. Intended for reads where ``NOT_GIVEN`` should never appear, such as aSTRING
HIGHsrc/pipecat/utils/asyncio/task_manager.py173Creates and schedules a new asyncio Task that runs the given coroutine. The task is added to a global set of crSTRING
HIGHsrc/pipecat/cli/registry/service_loader.py18Extract the extra names from a package string. Args: package: Package string like "pipecat-ai[deepgram]", "STRING
HIGHsrc/pipecat/cli/generators/project.py76Generate the complete project structure. Args: output_dir: Optional directory to create project in STRING
HIGHsrc/pipecat/adapters/services/gemini_adapter.py103Recursively adapt a JSON schema to the subset Gemini accepts. Tool schemas are JSON Schema, but Gemini takeSTRING
HIGHsrc/pipecat/adapters/services/gemini_adapter.py395Convert standard universal context message to Google Content object. Handles conversion of text, images, and fuSTRING
HIGHsrc/pipecat/adapters/services/bedrock_adapter.py210Convert standard format message to AWS Bedrock format. Handles conversion of text content, tool calls, and toolSTRING
HIGHsrc/pipecat/adapters/services/anthropic_adapter.py294Convert standard universal context message to Anthropic format. Handles conversion of text content, tool calls,STRING
HIGHsrc/pipecat/serializers/telnyx.py128Serializes a Pipecat frame to Telnyx WebSocket format. Handles conversion of various frame types to Telnyx WebSSTRING
HIGHsrc/pipecat/serializers/telnyx.py237Deserializes Telnyx WebSocket data to Pipecat frames. Handles conversion of Telnyx media events to appropriate STRING
HIGHsrc/pipecat/serializers/genesys.py315Create a protocol message with common fields. Based on the Genesys AudioHook protocol, responses include: STRING
HIGHsrc/pipecat/audio/utils.py164Calculate the loudness level of audio data using ITU-R BS.1770. Args: audio: Audio data as raw bytes (16-biSTRING
HIGHsrc/pipecat/audio/krisp_instance.py44Convert integer sample rate to Krisp SDK enum value. Args: sample_rate: Sample rate in Hz (e.g., 16000, 240STRING
HIGHsrc/pipecat/audio/krisp_instance.py64Convert integer frame duration to Krisp SDK enum value. Args: frame_duration_ms: Frame duration in millisecSTRING
HIGHsrc/pipecat/audio/filters/aic_filter.py131Get or load a Model and increment its reference count. Call this when starting a filter. Store the returned keySTRING
HIGHsrc/pipecat/audio/turn/krisp_viva_turn.py162Create a turn detection session with the specified sample rate. Args: sample_rate: Sample rate for STRING
HIGHsrc/pipecat/audio/vad/krisp_viva_vad.py95Create a Krisp VAD session with a specific sample rate. Args: sample_rate: Sample rate for the sessSTRING
HIGHsrc/pipecat/transcriptions/language.py586Resolve a Language enum to a service-specific language code. Checks the language map first, then falls back to extrSTRING
HIGHsrc/pipecat/workers/base_worker.py1050Wait for workers to be ready, create a job group, and send requests. Waits for all workers to be registered as STRING
HIGHsrc/pipecat/flows/manager.py293Initialize the flow manager. Args: initial_node: Optional initial node configuration. If provided, STRING
HIGHsrc/pipecat/services/llm_service.py813Generate a compressed summary of conversation context. Uses the message selection logic to identify which messaSTRING
HIGHsrc/pipecat/services/settings.py142Merge a delta-mode object into this store-mode object. Only fields in *delta* that are **given** (i.e. not ``NOSTRING
HIGHsrc/pipecat/services/settings.py192Build a **delta-mode** settings object from a plain dictionary. This exists for backward compatibility with codSTRING
HIGHsrc/pipecat/services/inworld/realtime/events.py870Parse a server event from JSON. Args: data: JSON text containing the server event, as delivered by the STRING
HIGHsrc/pipecat/services/google/tts.py693Create authenticated Google Text-to-Speech client. Args: credentials: JSON string with service accoSTRING
HIGHsrc/pipecat/services/google/tts.py902Create authenticated Google Text-to-Speech client. Args: credentials: JSON string with service accoSTRING
HIGHsrc/pipecat/services/google/llm.py557Yield the model's streamed chunks, re-issuing the request once if it stalls. The API client sends the request lSTRING
HIGHsrc/pipecat/services/google/llm.py608Yield streamed chunks, giving up if the stream stalls between them. A stream that stops producing without closiSTRING
HIGHsrc/pipecat/services/google/image.py148Generate images from a text prompt using Google's Imagen model. Args: prompt: The text description STRING
HIGHsrc/pipecat/services/google/stt.py381Normalize adaptation input to a SpeechAdaptation message. A ``phrase_sets`` entry may be a resource name string, anSTRING
HIGHsrc/pipecat/services/google/vertex/llm.py196Retrieve Credentials using Google service account credentials. Supports multiple authentication methods: STRING
HIGHsrc/pipecat/services/google/gemini_live/vertex/llm.py263Retrieve Credentials using Google service account credentials JSON. Supports multiple authentication methods: STRING
HIGHsrc/pipecat/services/deepgram/flux/stt.py121Initialize the Deepgram Flux STT service. Args: api_key: Deepgram API key for authentication. RequiSTRING
HIGHsrc/pipecat/services/deepgram/flux/stt.py390Send audio data to Deepgram Flux for transcription. Transmits raw audio bytes to the Deepgram Flux API for realSTRING
15 more matches not shown…
Deep Nesting315 hits · 281 pts
SeverityFileLineSnippetContext
LOWtests/test_deepgram_flux_sagemaker_tts.py77CODE
LOWtests/test_deepgram_flux_tts.py41CODE
LOWtests/test_deepgram_flux_tts.py55CODE
LOWtests/test_bland_tts.py56CODE
LOWtests/test_bland_tts.py776CODE
LOWtests/test_bland_tts.py859CODE
LOWtests/test_bland_tts.py919CODE
LOWtests/test_bland_tts.py68CODE
LOWtests/test_bland_tts.py784CODE
LOWtests/test_bland_tts.py863CODE
LOWtests/test_bland_tts.py922CODE
LOWtests/test_get_llm_invocation_params.py482CODE
LOWtests/test_gemini_live_user_audio.py53CODE
LOWtests/test_xai_realtime_events.py104CODE
LOWtests/cli/test_client_generation.py202CODE
LOWtests/cli/test_project_generation.py59CODE
LOWtests/cli/test_project_generation.py414CODE
LOWexamples/transcription/transcription-google-llm.py94CODE
LOWexamples/transcription/transcription-google-llm.py131CODE
LOWexamples/features/features-custom-frame-processor.py39CODE
LOWexamples/multi-worker/code-assistant/code_worker.py80CODE
LOWexamples/multi-worker/openclaw-agent/openclaw_worker.py103CODE
LOW…es/realtime/realtime-gemini-live-grounding-metadata.py79CODE
LOWexamples/voice/voice-google-audio-in.py86CODE
LOWexamples/voice/voice-google-audio-in.py128CODE
LOWexamples/voice/voice-aicoustics-vad-only.py120CODE
LOWexamples/flows/llm_switching.py95CODE
LOWscripts/cli/imports/import_generator.py19CODE
LOWscripts/cli/imports/import_generator.py56CODE
LOWscripts/cli/imports/import_generator.py138CODE
LOWscripts/cli/imports/import_generator.py285CODE
LOWscripts/cli/imports/import_generator.py381CODE
LOWscripts/cli/configs/config_generator.py256CODE
LOWscripts/cli/configs/config_generator.py375CODE
LOWscripts/provider-watch/probe.py284CODE
LOWscripts/provider-watch/probe.py332CODE
LOWscripts/provider-watch/publish.py230CODE
LOWscripts/provider-watch/inventory.py134CODE
LOWscripts/provider-watch/inventory.py167CODE
LOWscripts/provider-watch/inventory.py195CODE
LOWscripts/provider-watch/inventory.py364CODE
LOWscripts/krisp/test_krisp_viva_filter_audiofile.py88CODE
LOWscripts/krisp/test_krisp_viva_turn_audiofile.py68CODE
LOWscripts/deprecations/scan.py128CODE
LOWscripts/deprecations/scan.py296CODE
LOWscripts/deprecations/scan.py312CODE
LOWsrc/pipecat/pipeline/worker.py279CODE
LOWsrc/pipecat/pipeline/worker.py913CODE
LOWsrc/pipecat/pipeline/worker.py974CODE
LOWsrc/pipecat/pipeline/worker.py1023CODE
LOWsrc/pipecat/pipeline/worker.py1440CODE
LOWsrc/pipecat/pipeline/worker.py1505CODE
LOWsrc/pipecat/pipeline/job_decorator.py51CODE
LOWsrc/pipecat/pipeline/sync_parallel_pipeline.py252CODE
LOWsrc/pipecat/pipeline/sync_parallel_pipeline.py291CODE
LOWsrc/pipecat/pipeline/worker_observer.py194CODE
LOWsrc/pipecat/pipeline/worker_ready_decorator.py37CODE
LOWsrc/pipecat/evals/harness.py459CODE
LOWsrc/pipecat/evals/harness.py680CODE
LOWsrc/pipecat/evals/harness.py865CODE
255 more matches not shown…
Self-Referential Comments87 hits · 262 pts
SeverityFileLineSnippetContext
MEDIUMtests/test_markdown_text_filter.py216 # Create a filter with all features disabledCOMMENT
MEDIUMtests/test_frame_processor.py299 # Create a frame with mutable fields to test shallow copyingCOMMENT
MEDIUMtests/test_ivr_navigation.py28 # Create a mock LLM serviceCOMMENT
MEDIUMtests/test_krisp_viva_filter.py56 # Create a temporary .kef model file for testingCOMMENT
MEDIUMtests/test_piper_tts.py63 # Create an aiohttp test serverCOMMENT
MEDIUMtests/test_krisp_viva_vad.py55 # Create a temporary .kef model file for testingCOMMENT
MEDIUMtests/test_vonage_video_connector.py1003 # Create an event that will block but can be interruptedCOMMENT
MEDIUMtests/test_vonage_video_connector.py2884 # Create a simple RGB image with distinct colorsCOMMENT
MEDIUMtests/test_vonage_video_connector.py793 # Create an event that will block but can be interruptedCOMMENT
MEDIUMtests/test_vonage_video_connector.py1082 # Create a mock coroutine to queueCOMMENT
MEDIUMtests/test_vonage_video_connector.py1219 # Create a test RGB image (640x480, 3 channels)COMMENT
MEDIUMtests/test_vonage_video_connector.py1869 # Create a test RGB video frame (4x4, 3 channels)COMMENT
MEDIUMtests/test_vonage_video_connector.py2121 # Create a mock audio frameCOMMENT
MEDIUMtests/test_vonage_video_connector.py2139 # Create a test video frameCOMMENT
MEDIUMtests/test_vonage_video_connector.py2171 # Create a test video frameCOMMENT
MEDIUMtests/test_vonage_video_connector.py2202 # Create a video frame with incorrect sizeCOMMENT
MEDIUMtests/test_vonage_video_connector.py2228 # Create a video frame with incorrect sizeCOMMENT
MEDIUMtests/test_service_switcher.py500 # Create a pipeline with both switchers: switcher1 -> switcher2COMMENT
MEDIUMtests/test_openai_llm_timeout.py69 # Create a context frame to processCOMMENT
MEDIUMtests/test_context_summarization.py650 # Create a minimal LLM service - base class raises NotImplementedErrorCOMMENT
MEDIUMtests/test_get_llm_invocation_params.py176 # Create a message with complex content structure (text + image)COMMENT
MEDIUMtests/test_get_llm_invocation_params.py188 # Create a message with multiple text blocksCOMMENT
MEDIUMtests/test_get_llm_invocation_params.py487 # Create a message with complex content structure (text + image)COMMENT
MEDIUMtests/test_get_llm_invocation_params.py502 # Create a message with multiple text blocksCOMMENT
MEDIUMtests/test_get_llm_invocation_params.py512 # Create a message with audio input (text + audio)COMMENT
MEDIUMtests/test_get_llm_invocation_params.py1212 # Create a complex message with both text and image contentCOMMENT
MEDIUMtests/test_get_llm_invocation_params.py1740 # Create a complex message with both text and image contentCOMMENT
MEDIUM…ideo-processing/video-processing-custom-video-track.py157 # Create a blue-tinted copy for the custom destination.COMMENT
MEDIUMexamples/transports/transports-small-webrtc.py102 # Create a transport using the WebRTC connectionCOMMENT
MEDIUMexamples/rag/rag-mem0.py84 # Create a personalized greeting based on memoriesCOMMENT
MEDIUMexamples/realtime/realtime-openai.py148 # Create a standard OpenAI LLM context object using the normal messages format. TheCOMMENT
MEDIUMexamples/realtime/realtime-openai-text.py145 # Create a standard OpenAI LLM context object using the normal messages format. TheCOMMENT
MEDIUMexamples/realtime/realtime-inworld.py109 # Create the Inworld Realtime LLM service.COMMENT
MEDIUMexamples/realtime/realtime-grok.py150 # Create the Grok Realtime LLM serviceCOMMENT
MEDIUM…es/realtime/realtime-gemini-live-grounding-metadata.py120 # Create a processor to capture grounding metadataCOMMENT
MEDIUMexamples/realtime/realtime-azure.py135 # Create a standard LLM context object using the normal messages format. TheCOMMENT
MEDIUMexamples/realtime/realtime-aws-nova-sonic.py94 # Create the AWS Nova Sonic LLM serviceCOMMENT
MEDIUMexamples/realtime/realtime-openai-live-video.py103 # Create a standard OpenAI LLM context object using the normal messages format. TheCOMMENT
MEDIUMexamples/realtime/realtime-gemini-live-files-api.py86 # Create a temporary fileSTRING
MEDIUMexamples/realtime/realtime-gemini-live-files-api.py95 # Create a sample file to uploadSTRING
MEDIUMexamples/update-settings/stt/stt-whisper-api.py59 # This file is meant to exercise Whisper API-based STT services, so we useCOMMENT
MEDIUMexamples/getting-started/04-sync-speech-and-image.py114 # Create an HTTP session for API callsCOMMENT
MEDIUMexamples/voice/voice-neuphonic-http.py62 # Create an HTTP sessionCOMMENT
MEDIUMexamples/voice/voice-elevenlabs-http.py62 # Create an HTTP sessionCOMMENT
MEDIUMexamples/voice/voice-bland-http.py62 # Create an HTTP sessionCOMMENT
MEDIUMexamples/voice/voice-aicoustics.py155 # Create the WAV fileCOMMENT
MEDIUMexamples/voice/voice-xtts.py61 # Create an HTTP sessionCOMMENT
MEDIUMexamples/voice/voice-asyncai-http.py62 # Create an HTTP sessionCOMMENT
MEDIUMexamples/voice/voice-sarvam-vad-http.py63 # Create an HTTP sessionCOMMENT
MEDIUMexamples/voice/voice-minimax.py63 # Create an HTTP sessionCOMMENT
MEDIUMexamples/voice/voice-rime-http.py62 # Create an HTTP sessionCOMMENT
MEDIUM…persistent-context/persistent-context-grok-realtime.py115# Define the tools schemaCOMMENT
MEDIUMscripts/cli/imports/update_imports.py173 # Create the complete file contentSTRING
MEDIUM.github/workflows/update-docs.yml152 ### Creating the docs PRCOMMENT
MEDIUMsrc/pipecat/pipeline/worker.py847 # Create the worker's tasks and wait for the push task, whichCOMMENT
MEDIUMsrc/pipecat/runner/daily.py208 # Create a new roomCOMMENT
MEDIUMsrc/pipecat/transports/websocket/server.py263 # Create a task to monitor the websocket connectionCOMMENT
MEDIUMsrc/pipecat/utils/base_object.py255 # Create the task. Note that this is a task per each functionCOMMENT
MEDIUMsrc/pipecat/utils/tracing/turn_trace_observer.py136 # Create a new span for this conversationCOMMENT
MEDIUMsrc/pipecat/utils/tracing/turn_trace_observer.py195 # Create a new span for this turnCOMMENT
27 more matches not shown…
Unused Imports203 hits · 192 pts
SeverityFileLineSnippetContext
LOWtests/test_stt_usage_metrics.py167CODE
LOWtests/test_runner_run.py37CODE
LOWtests/test_runner_run.py38CODE
LOWtests/test_runner_utils.py24CODE
LOWtests/test_bus_network.py14CODE
LOWtests/test_bus_network.py21CODE
LOWtests/test_processor_usable_gating.py23CODE
LOWscripts/release-changelog.py29CODE
LOWscripts/provider-watch/digest.py20CODE
LOWscripts/provider-watch/probe.py46CODE
LOWscripts/provider-watch/publish.py35CODE
LOWscripts/provider-watch/inventory.py26CODE
LOWscripts/krisp/test_krisp_viva_filter_audiofile.py28CODE
LOWscripts/krisp/test_krisp_viva_turn_audiofile.py26CODE
LOWscripts/deprecations/generate.py23CODE
LOWscripts/deprecations/scan.py20CODE
LOWscripts/deprecations/generate_removals.py30CODE
LOWsrc/pipecat/pipeline/job_context.py9CODE
LOWsrc/pipecat/pipeline/task.py15CODE
LOWsrc/pipecat/pipeline/task.py15CODE
LOWsrc/pipecat/pipeline/task.py15CODE
LOWsrc/pipecat/pipeline/task.py15CODE
LOWsrc/pipecat/pipeline/task.py15CODE
LOWsrc/pipecat/runner/types.py22CODE
LOWsrc/pipecat/runner/utils.py57CODE
LOWsrc/pipecat/runner/utils.py59CODE
LOWsrc/pipecat/transports/websocket/server.py24CODE
LOWsrc/pipecat/transports/vonage/video_connector.py41CODE
LOWsrc/pipecat/bus/bridge_processor.py37CODE
LOWsrc/pipecat/bus/__init__.py22CODE
LOWsrc/pipecat/bus/__init__.py23CODE
LOWsrc/pipecat/bus/__init__.py24CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
LOWsrc/pipecat/bus/__init__.py25CODE
143 more matches not shown…
AI Slop Vocabulary48 hits · 151 pts
SeverityFileLineSnippetContext
MEDIUMtests/test_tts_frame_ordering.py1700 # — an ordering quirk of the test harness sending everything nearlyCOMMENT
MEDIUMtests/test_pipeline.py500 # is a guaranteed lower bound, so this is robust to scheduling jitter whileCOMMENT
MEDIUMtests/cli/test_project_generation.py865 # schema (EvalScenario.load is the validator the harness itself uses).COMMENT
MEDIUMtests/cli/test_project_generation.py874 # The project env carries what the harness needs via the `evals` extra: theCOMMENT
LOW…s/function-calling/function-calling-moondream-video.py98 # For all other frames, just pass them throughCOMMENT
LOWexamples/transcription/transcription-google-llm.py155 # keep the token count down, but for now, we'll just use the whole thing.STRING
MEDIUMexamples/features/features-add-tool-change-messages.py121 # what we want for this validation harness. Pull it withCOMMENT
MEDIUMexamples/realtime/realtime-aws-nova-sonic.py112 # Session continuation is enabled by default, allowing seamlessCOMMENT
MEDIUMscripts/provider-watch/probe.py281# ---------------------------------------------------------------------- harnessCOMMENT
MEDIUMscripts/release-evals/manifest.yaml364 # LLM responds to, so the harness can assert on the resulting transcription andCOMMENT
MEDIUM…ripts/release-evals/scenarios/food_ordering_sushi.yaml28 # pipeline down before the farewell llm_response reaches the harness.COMMENT
MEDIUMscripts/release-evals/scenarios/hello_world.yaml11 # pipeline down before the farewell llm_response reaches the harness.COMMENT
MEDIUM…-evals/scenarios/restaurant_reservation_available.yaml28 # pipeline down before the farewell llm_response reaches the harness.COMMENT
MEDIUM…ripts/release-evals/scenarios/keenable_fetch_page.yaml5# is a stable documentation domain, so the judged answer is robust over time.COMMENT
MEDIUM…ripts/release-evals/scenarios/food_ordering_pizza.yaml36 # pipeline down before the farewell llm_response reaches the harness.COMMENT
MEDIUM…ripts/release-evals/scenarios/acme_handoff_voices.yaml52 # reaches the harness, so assert the call alone.COMMENT
MEDIUMscripts/release-evals/scenarios/insurance_quote.yaml42 # pipeline down before the farewell llm_response reaches the harness.COMMENT
MEDIUMscripts/release-evals/scenarios/acme_handoff.yaml32 # reaches the harness, so assert the call alone.COMMENT
MEDIUM…pts/release-evals/scenarios/language_switch_audio.yaml5# check that a non-English answer survives the bot's TTS and the harness's STT.COMMENT
MEDIUM…/scenarios/restaurant_reservation_no_availability.yaml36 # pipeline down before the farewell llm_response reaches the harness.COMMENT
MEDIUM…ipts/release-evals/scenarios/multi_worker_handoff.yaml36 # pipeline down before the farewell llm_response reaches the harness.COMMENT
MEDIUMscripts/release-evals/scenarios/capital_question.yaml8# robust to transcription than arithmetic: numbers are homophone-prone on bothCOMMENT
MEDIUMsrc/pipecat/evals/harness.py122# harness doesn't pace frames — and no continuous frame stream crosses the wire.COMMENT
MEDIUMsrc/pipecat/evals/harness.py141 "harness_error", # the harness itself raised (sub-pipeline, judge, ...)CODE
MEDIUMsrc/pipecat/evals/harness.py334 # Timestamped trace of the harness's own decisions, for diagnosing flakes.COMMENT
MEDIUMsrc/pipecat/evals/harness.py363 # response (audio modality): the harness captures the bot's actual audioCOMMENT
MEDIUMsrc/pipecat/evals/harness.py583 # An unexpected harness-side error (a sub-pipeline failing to startCOMMENT
MEDIUMsrc/pipecat/evals/harness.py616 # attributed to it rather than leaking into the harness catch-all.COMMENT
MEDIUMsrc/pipecat/evals/suite.py71# How long to wait for a freshly spawned bot to start listening (the harnessCOMMENT
MEDIUMsrc/pipecat/evals/suite.py74# How long to wait for a bot subprocess to exit after the harness asks it toCOMMENT
MEDIUMsrc/pipecat/evals/suite.py82# The harness runs three sub-pipelines in-process and tags each one's logs with anCOMMENT
MEDIUMsrc/pipecat/evals/suite.py83# ``eval_pipeline`` context value via logger.contextualize (see harness.py),COMMENT
MEDIUMsrc/pipecat/evals/suite.py85# connection, harness internals) falls through to "harness". The label is theCOMMENT
MEDIUMsrc/pipecat/evals/suite.py574 # Under --debug, capture the harness's own logs (transcription / voiceCOMMENT
MEDIUMsrc/pipecat/evals/suite.py615 # Save the harness's own decision trace next to the bot log.COMMENT
MEDIUMsrc/pipecat/evals/transport.py310 # The harness sends the image encoded over the wire, but a real cameraCOMMENT
MEDIUMsrc/pipecat/evals/transcribe.py80 # Optional sink for timing diagnostics; the harness points this at itsCOMMENT
MEDIUMsrc/pipecat/evals/judge.py82# harness; this just poses the question and is never stored in that context.COMMENT
MEDIUMsrc/pipecat/evals/judge.py131 # The conversation the judge evaluates against, grown by the harness overCOMMENT
MEDIUMsrc/pipecat/evals/serializer.py67# ``CancelWorkerFrame``, so the harness can end a scenario by gracefully tearing down theCOMMENT
MEDIUMsrc/pipecat/evals/serializer.py76# without a real camera. The harness sends the image encoded over the wire; theCOMMENT
MEDIUMsrc/pipecat/evals/serializer.py83# so the harness reader sees it; the harness transcribes the audio locally.COMMENT
MEDIUMsrc/pipecat/evals/serializer.py102 # wire so the harness can observe semantic events.COMMENT
MEDIUMsrc/pipecat/evals/serializer.py108 # The most recent image the harness registered (still-encoded bytes, MIMECOMMENT
MEDIUMsrc/pipecat/runner/utils.py179 # (transport_type, call_data) tuple; isinstance keeps this robust againstCOMMENT
MEDIUMsrc/pipecat/runner/utils.py718 # harness connects as an RTVI client; the bot pipeline must include anCOMMENT
MEDIUMsrc/pipecat/cli/generators/project.py353 # The `evals` extra bundles the `pipecat eval` command and the harness'sCOMMENT
LOWsrc/pipecat/adapters/services/bedrock_adapter.py88 # To avoid refactoring in AWSBedrockLLMService, we just pass through tool_choice.COMMENT
Hallucination Indicators14 hits · 140 pts
SeverityFileLineSnippetContext
CRITICALtests/test_livekit_transport.py638 transport._client.room.remote_participants.get.assert_not_called()CODE
CRITICALtests/test_livekit_transport.py656 transport._client.room.remote_participants.get.assert_not_called()CODE
CRITICALtests/test_sarvam_llm.py335 service._client.chat.completions.create.assert_not_called()CODE
CRITICALtests/test_sarvam_llm.py408 service._client.chat.completions.create.assert_not_called()CODE
CRITICALtests/test_sarvam_llm.py465 service._client.chat.completions.create.assert_not_called()CODE
CRITICALtests/test_sarvam_llm.py492 service._client.chat.completions.create.assert_not_called()CODE
CRITICALtests/test_sarvam_llm.py532 service._client.chat.completions.create.assert_not_called()CODE
CRITICALtests/test_sarvam_llm.py608 service._client.chat.completions.create.assert_not_called()CODE
CRITICALtests/test_sarvam_llm.py648 service._client.chat.completions.create.assert_not_called()CODE
CRITICALtests/test_anthropic_thinking_defaults.py38 return service._client.beta.messages.create.call_args.kwargs.get("thinking")CODE
CRITICALtests/test_run_inference.py73 service._client.chat.completions.create.assert_called_once_with(CODE
CRITICALtests/test_run_inference.py184 service._client.beta.messages.create.assert_called_once_with(CODE
CRITICALtests/test_run_inference.py256 service._client.aio.models.generate_content.assert_called_once()CODE
CRITICALsrc/pipecat/services/openai/tts.py280 async with self._client.audio.speech.with_streaming_response.create(CODE
Redundant / Tautological Comments80 hits · 120 pts
SeverityFileLineSnippetContext
LOWtests/test_markdown_text_filter.py52 # Check if spaces are in the same positionsSTRING
LOWtests/test_flows_context_strategies.py300 # Set nodes to trigger summary generationCOMMENT
LOWtests/test_flows_context_strategies.py336 # Set nodes to trigger summary generationCOMMENT
LOWtests/test_get_llm_invocation_params.py561 # Check if it's image or audio based on the text contentCOMMENT
LOWtests/test_aic_filter.py16# Check if aic_sdk is availableCOMMENT
LOWtests/test_aic_quail_vad.py12# Check if aic_sdk is availableCOMMENT
LOWdocs/api/build-docs.sh15# Check if sphinx-build is availableCOMMENT
LOWexamples/flows/restaurant_reservation.py94 # Check if time is bookedCOMMENT
LOWscripts/cli/imports/import_generator.py89 # Check if this file contains the classCOMMENT
LOWscripts/cli/imports/import_generator.py336 # Check if this is a standard library module that should be imported directlyCOMMENT
LOWscripts/cli/configs/config_generator.py181 # Check if parameter has a default valueCOMMENT
LOWscripts/cli/configs/config_generator.py258 # Check if this service has manual_config flag in metadataCOMMENT
LOWscripts/cli/configs/config_generator.py262 # Check if this is a special case that needs manual handlingCOMMENT
LOWscripts/cli/configs/config_generator.py284 # Check if this service uses the Settings patternCOMMENT
LOWscripts/cli/configs/config_generator.py358 # Check if this service has a manual configCOMMENT
LOWscripts/cli/configs/config_generator.py396 # Check if multi-lineCOMMENT
LOWscripts/krisp/test_krisp_viva_filter_audiofile.py119 # Check if sample rate is supportedCOMMENT
LOWscripts/krisp/test_krisp_viva_turn_audiofile.py92 # Check if sample rate is supportedCOMMENT
LOWscripts/krisp/test_krisp_viva_turn_audiofile.py214 # Print resultsCOMMENT
LOW.github/workflows/generate-changelog.yml103 # Check if type is validCOMMENT
LOWsrc/pipecat/pipeline/worker_observer.py90 # Add the observer to the list.COMMENT
LOWsrc/pipecat/runner/run.py496 # Check if it has a bot functionCOMMENT
LOWsrc/pipecat/transports/base_output.py506 # Check if we have an audio mixer for our destination.COMMENT
LOWsrc/pipecat/transports/smallwebrtc/transport.py736 # Check if there are any pending image requests and createCOMMENT
LOWsrc/pipecat/transports/livekit/transport.py289 # Check if there are already participants in the roomCOMMENT
LOWsrc/pipecat/utils/string.py235 # Check if any start tag appears in the textCOMMENT
LOWsrc/pipecat/utils/tracing/setup.py16# Check if OpenTelemetry is availableCOMMENT
LOWsrc/pipecat/utils/tracing/service_decorators.py1012 # Check if tools is not None and not NOT_GIVENCOMMENT
LOWsrc/pipecat/utils/context/llm_context_summarization.py530 # Check if the first message is a system message (initial system prompt).COMMENT
LOWsrc/pipecat/utils/text/pattern_pair_aggregator.py229 # Check if this pattern was already processedCOMMENT
LOWsrc/pipecat/utils/text/pattern_pair_aggregator.py330 # Check if we have incomplete patternsCOMMENT
LOWsrc/pipecat/utils/text/simple_text_aggregator.py100 # Check if the new character is non-whitespaceCOMMENT
LOWsrc/pipecat/utils/text/simple_text_aggregator.py116 # Check if we just added sentence-ending punctuationCOMMENT
LOWsrc/pipecat/cli/registry/service_loader.py169 # Check if it's in SERVICE_CONFIGSCOMMENT
LOWsrc/pipecat/cli/registry/service_loader.py173 # Check if it's a transportCOMMENT
LOWsrc/pipecat/cli/registry/service_loader.py294 # Check if config existsCOMMENT
LOWsrc/pipecat/cli/registry/service_loader.py298 # Check if imports existCOMMENT
LOWsrc/pipecat/cli/generators/project.py63 # Check if the new name is availableCOMMENT
LOWsrc/pipecat/cli/generators/project.py117 # Check if project already existsCOMMENT
LOWsrc/pipecat/cli/generators/project.py247 # Check if any service config contains "session=" parameterCOMMENT
LOWsrc/pipecat/cli/generators/project.py251 # Check if the config contains session= or aiohttp_session=COMMENT
LOWsrc/pipecat/cli/generators/project.py295 # Check if we need aiohttp session and add import if neededCOMMENT
LOWsrc/pipecat/cli/generators/project.py534 # Check if this is Daily PSTN or Twilio + Daily SIP (special handling)COMMENT
LOWsrc/pipecat/adapters/services/gemini_adapter.py369 # Check if we only have function-related messages (no regular text)COMMENT
LOW…pecat/processors/aggregators/llm_response_universal.py1994 # Check if this image is a result of a function call.COMMENT
LOW…pecat/processors/aggregators/llm_context_summarizer.py227 # Check if we've reached the token limitCOMMENT
LOW…pecat/processors/aggregators/llm_context_summarizer.py231 # Check if we've exceeded max unsummarized messagesCOMMENT
LOW…pecat/processors/aggregators/llm_context_summarizer.py360 # Check if this is the result we're waiting for. Both auto and manualCOMMENT
LOW…pecat/processors/aggregators/llm_context_summarizer.py395 # Check if we still have enough messagesCOMMENT
LOWsrc/pipecat/serializers/vonage.py128 # Check if this is binary audio dataCOMMENT
LOWsrc/pipecat/audio/filters/rnnoise_filter.py134 # Check if output is float (needs scaling) or int16 (ready)COMMENT
LOWsrc/pipecat/audio/turn/krisp_viva_turn.py319 # Check if turn is complete based on probability thresholdCOMMENT
LOWsrc/pipecat/audio/turn/smart_turn/http_smart_turn.py75 # Check if successfulCOMMENT
LOWsrc/pipecat/transcriptions/language.py614 # Check if language is in the verified mapCOMMENT
LOWsrc/pipecat/observers/loggers/metrics_log_observer.py117 # Check if this metrics type should be loggedCOMMENT
LOWsrc/pipecat/observers/loggers/debug_log_observer.py151 # Check if this frame type is in our filtersCOMMENT
LOWsrc/pipecat/observers/loggers/debug_log_observer.py182 # Check if we should log this frameCOMMENT
LOWsrc/pipecat/flows/manager.py530 # Check if all function calls are complete using Pipecat's stateCOMMENT
LOWsrc/pipecat/services/websocket_service.py288 # Check if the connection died too quickly after being established. ThisCOMMENT
LOWsrc/pipecat/services/cartesia/tts.py504 # Check if this is a Chinese/Japanese language (if language is None, treat as other)COMMENT
20 more matches not shown…
Over-Commented Block107 hits · 100 pts
SeverityFileLineSnippetContext
LOWpyproject.toml241 "I", # Import rulesCOMMENT
LOWpyproject.toml261 # Base classes leave optional hooks empty so subclasses override only whatCOMMENT
LOWtests/test_aggregated_frame_sequencer.py1241 "force_complete must propagate includes_inter_frame_spaces for CJK slots "COMMENT
LOWtests/test_word_completion_tracker.py1981COMMENT
LOWtests/test_websocket_transport.py1#COMMENT
LOWtests/test_websocket_transport.py21# self.serialized_sample_frame = self.transport._serializer.serialize(COMMENT
LOWtests/test_websocket_transport.py41# mock_websocket.send.call_args[0][0], self.serialized_sample_frame)COMMENT
LOWtests/test_websocket_transport.py61# TTSStartFrame(),COMMENT
LOWtests/test_websocket_transport.py81# async def test_serializer_parameter(self):COMMENT
LOWtests/test_websocket_transport.py101# self.transport = WebsocketTransport(COMMENT
LOWexamples/features/features-user-email-gathering.py81 )COMMENT
LOWexamples/mcp/mcp-streamable-http-gemini-live.py81 tools=await mcp.tools(),COMMENT
LOW…/multi-worker/ui-worker/document-review/client/main.js41// In-flight review groups, keyed by job_id. Rendered as cards aboveCOMMENT
LOWexamples/rag/rag-mem0.py181 # "model": "claude-3-5-sonnet-20240620",COMMENT
LOWexamples/realtime/realtime-openai.py201 # (Though note that tools in your LLMContext take precedence over thoseCOMMENT
LOWexamples/realtime/realtime-openai.py221COMMENT
LOWexamples/realtime/realtime-gemini-live.py141 # frames, but you can add supplemental local turn frames for consumptionCOMMENT
LOWexamples/realtime/realtime-grok.py181COMMENT
LOWexamples/realtime/realtime-ultravox.py181 #COMMENT
LOW…es/realtime/realtime-gemini-live-grounding-metadata.py121 grounding_processor = GroundingMetadataProcessor()COMMENT
LOWexamples/realtime/realtime-azure.py121 transcription=InputAudioTranscription(model="whisper-1"),COMMENT
LOWexamples/realtime/realtime-aws-nova-sonic.py101 # - us-west-2COMMENT
LOWexamples/realtime/realtime-aws-nova-sonic.py121 ),COMMENT
LOWexamples/realtime/realtime-gemini-live-files-api.py161 "role": "developer",COMMENT
LOWexamples/update-settings/llm/llm-gemini-live.py61 context = LLMContext()COMMENT
LOWexamples/update-settings/llm/llm-gemini-live-vertex.py61 )COMMENT
LOWexamples/thinking/thinking-openai-responses.py121COMMENT
LOWexamples/thinking/thinking-openai-responses-http.py121COMMENT
LOWexamples/getting-started/04-sync-speech-and-image.py141 # them basically in order (e.g. I1 A1 A1 A1 I2 A2 A2 A2 A2 I3 A3). To doCOMMENT
LOW…t/turn-management-filter-incomplete-turns-user-idle.py101 # with one of:COMMENT
LOW…management-filter-incomplete-turns-function-calling.py121 # fires only when the LLM confirms ✓. The LLM marks each responseCOMMENT
LOW…-management/turn-management-smart-turn-local-coreml.py41# Example setup:COMMENT
LOWexamples/flows/warm_transfer.py81COMMENT
LOWexamples/flows/warm_transfer.py101# - continued_customer_interactionCOMMENT
LOWscripts/deprecations/scan.py41# The first reference in a directive body (role or backtick) — the replacement,COMMENT
LOWscripts/release-evals/run.sh1#!/usr/bin/env shCOMMENT
LOWscripts/release-evals/manifest.yaml361 #COMMENT
LOW…vals/scenarios/async_tool_cancellation_concurrent.yaml41 # Asking for the call to stop is not the same as it stopping: work thatCOMMENT
LOW…als/scenarios/multi_worker_handoff_back_and_forth.yaml1# Exercises a full round-trip multi-worker handoff: the reservation worker handsCOMMENT
LOW…ripts/release-evals/scenarios/acme_handoff_voices.yaml1# Each worker brings its own TTS and its own voice, so a hand-off is twoCOMMENT
LOW.github/PULL_REQUEST_TEMPLATE.md1#### Please describe the changes in your PR. If it is addressing an issue, please reference that as well.COMMENT
LOWsrc/pipecat/pipeline/worker.py561 pipeline = Pipeline([edge_source, pipeline, edge_sink])COMMENT
LOWsrc/pipecat/pipeline/parallel_pipeline.py141COMMENT
LOWsrc/pipecat/evals/harness.py341 # One persistent TTS pipeline reused across the scenario's audio turns,COMMENT
LOWsrc/pipecat/evals/harness.py1041 self._debug(f"FAIL: {event_name}: {failures[-1].reason}")COMMENT
LOWsrc/pipecat/evals/serializer.py61# ``RTVIConfigureObserverFrame``. This is the trust boundary for raising theCOMMENT
LOWsrc/pipecat/transports/smallwebrtc/transport.py401 except MediaStreamError:COMMENT
LOWsrc/pipecat/transports/smallwebrtc/connection.py41# Clamp aiortc's SCTP DATA-chunk payload size so the on-wire UDP packet fitsCOMMENT
LOWsrc/pipecat/transports/moq/transport.py201COMMENT
LOWsrc/pipecat/transports/moq/transport.py521 # wall-clock duration for pacing.COMMENT
LOWsrc/pipecat/bus/ui/messages.py41#: Internal ``event_name`` used by a client-facing worker when republishingCOMMENT
LOWsrc/pipecat/utils/tracing/__init__.py1#COMMENT
LOWsrc/pipecat/utils/context/text_segment_map.py261 # Tokenization preserves whitespace, so SequenceMatcher sees:COMMENT
LOWsrc/pipecat/utils/context/text_segment_map.py281 # original="$42.50",COMMENT
LOWsrc/pipecat/utils/context/text_segment_map.py301 # A segment is all-or-nothing as soon as it holds a tag, so one tag inCOMMENT
LOW…pipecat/adapters/services/open_ai_responses_adapter.py81COMMENT
LOWsrc/pipecat/adapters/services/anthropic_adapter.py261 The message in Anthropic format, or None for a thought that can't beCOMMENT
LOWsrc/pipecat/adapters/services/anthropic_adapter.py421 List of messages with cache control markers added.COMMENT
LOWsrc/pipecat/processors/frame_processor.py261 # frames, so they will be returned first from the queue.COMMENT
LOWsrc/pipecat/processors/aggregators/llm_context.py41# "Re-export" types from OpenAI that we're using as universal context types.COMMENT
47 more matches not shown…
Modern AI Meta-Vocabulary32 hits · 96 pts
SeverityFileLineSnippetContext
MEDIUMpyproject.toml209# CLI project-scaffolding templates (jinja + client TS/JS/JSON/CSS trees). TheCOMMENT
MEDIUMREADME.md50The [Pipecat CLI](https://docs.pipecat.ai/api-reference/cli/overview) ships with `pipecat-ai` — install it with `uv toolCODE
MEDIUMREADME.md62Use [Pipecat Skills](https://github.com/pipecat-ai/skills) with [Claude Code](https://claude.ai/code) to scaffold projecCODE
MEDIUMtests/test_llm_service.py141 # The tool was not advertised, so this is treated as a hallucinationCOMMENT
MEDIUMtests/cli/test_quickstart.py49 # quickstart is a fixed preset; combining it with scaffold flags should warn ratherCOMMENT
MEDIUMtests/cli/test_quickstart.py50 # than silently ignore them — but still scaffold the canned (web) bot.COMMENT
MEDIUMtests/cli/test_init_interactive.py53 # The build-method prompt returns "scaffold", so init runs the wizard in-place,COMMENT
MEDIUMtests/cli/test_init_interactive.py70 # init initializes for agent-led dev before scaffolding.COMMENT
MEDIUMtests/cli/test_project_generation.py684 # Mirror the scaffold_quickstart config from cli/scaffold.py.COMMENT
MEDIUMtests/cli/test_init_agent_ready.py230 # Its one still-useful piece (Context Hub setup) lives in the scaffold's README.COMMENT
MEDIUMtests/cli/test_init_agent_ready.py274 # The scaffold lands in init's target dir, in-place, named after it.COMMENT
MEDIUMtests/cli/test_init_agent_ready.py277 # skipped — its place is taken by the scaffold's README (see test_quickstart_*).COMMENT
MEDIUMtests/cli/test_init_agent_ready.py171 # The scaffold path skips the from-scratch developer guide.COMMENT
MEDIUMtests/cli/test_init_agent_ready.py298 # Re-running init to refresh the guide in a scaffolded project must not offer to scaffold.COMMENT
MEDIUMtests/cli/test_init_in_place.py51 # The scaffold path skips GETTING_STARTED.md — the README is the start-here.COMMENT
MEDIUMexamples/features/features-add-tool-change-messages.py120 # hallucination-prone of the easily accessible models — exactlyCOMMENT
MEDIUMsrc/pipecat/evals/transcribe.py49# and offset words. Kept short so it can't trigger silence hallucinations.COMMENT
MEDIUMsrc/pipecat/cli/main.py87 # coding-agent guide and can scaffold a runnable bot (interactively or from flags/aCOMMENT
MEDIUMsrc/pipecat/cli/commands/init.py70# `--help` panels grouping the scaffold flags, so `pipecat init --help` reads asCOMMENT
MEDIUMsrc/pipecat/cli/commands/init.py505 # Scaffold now: run the wizard in-place. The scaffold lands in the same directory thatCOMMENT
MEDIUMsrc/pipecat/cli/commands/init.py554# Scaffold options that, when present, switch `init` to non-interactive scaffolding.COMMENT
MEDIUMsrc/pipecat/cli/commands/init.py565# Every scaffold/feature option, by parameter name — used to detect flags the userCOMMENT
MEDIUMsrc/pipecat/cli/commands/init.py757 pipecat init my-bot --config project-config.json # scaffold from a config fileCODE
MEDIUMsrc/pipecat/cli/commands/init.py761 # `pipecat init quickstart`: scaffold the canned bot in-place, with the coding-agent guide.STRING
MEDIUMsrc/pipecat/cli/commands/init.py763 # quickstart is a fixed preset — scaffold flags don't apply. Say so instead ofSTRING
MEDIUMsrc/pipecat/cli/commands/init.py815 # No scaffold options: write the guide and route to a build method.STRING
MEDIUMsrc/pipecat/cli/agent_templates/AGENTS.md19## 1. Start by scaffoldingCOMMENT
MEDIUMsrc/pipecat/cli/agent_templates/AGENTS.md31# Headless: any scaffold flag (--bot-type, a service, or --config) switches off the wizard.COMMENT
MEDIUMsrc/pipecat/cli/agent_templates/AGENTS.md275[Pipecat Cloud](https://www.daily.co/products/pipecat-cloud/) is a **hosted** option — deploying there is optional (run CODE
MEDIUMsrc/pipecat/services/google/gemini_live/llm.py1175 # Add context window compression to configuration, if enabled.COMMENT
MEDIUMsrc/pipecat/services/google/gemini_live/llm.py309 trigger_tokens: int | None = Field(default=None) # None = use default (80% of context window)CODE
MEDIUMsrc/pipecat/services/whisper/stt.py583 # Drop likely hallucinationsCOMMENT
AI Structural Patterns77 hits · 72 pts
SeverityFileLineSnippetContext
LOWsrc/pipecat/pipeline/worker.py279CODE
LOWsrc/pipecat/evals/harness.py266CODE
LOWsrc/pipecat/evals/harness.py374CODE
LOWsrc/pipecat/evals/suite.py271CODE
LOWsrc/pipecat/runner/daily.py77CODE
LOWsrc/pipecat/transports/lemonslice/api.py41CODE
LOWsrc/pipecat/tests/utils.py123CODE
LOWsrc/pipecat/bus/network/pgmq.py80CODE
LOWsrc/pipecat/utils/string.py355CODE
LOWsrc/pipecat/utils/tracing/service_attributes.py122CODE
LOWsrc/pipecat/utils/tracing/service_attributes.py186CODE
LOWsrc/pipecat/utils/tracing/service_attributes.py279CODE
LOWsrc/pipecat/utils/tracing/service_attributes.py384CODE
LOWsrc/pipecat/utils/text/transforms/voice_formatter.py32CODE
LOWsrc/pipecat/cli/config_validator.py38CODE
LOWsrc/pipecat/cli/commands/eval.py294CODE
LOWsrc/pipecat/cli/commands/eval.py844CODE
LOWsrc/pipecat/cli/commands/init.py587CODE
LOWsrc/pipecat/audio/resamplers/resampy_resampler.py64CODE
LOWsrc/pipecat/audio/resamplers/soxr_stream_resampler.py117CODE
LOWsrc/pipecat/audio/resamplers/soxr_resampler.py59CODE
LOWsrc/pipecat/audio/vad/aic_quail_vad.py75CODE
LOWsrc/pipecat/workers/runner.py109CODE
LOWsrc/pipecat/services/tts_service.py145CODE
LOWsrc/pipecat/services/cartesia/tts.py244CODE
LOWsrc/pipecat/services/cartesia/tts.py811CODE
LOWsrc/pipecat/services/inworld/tts.py154CODE
LOWsrc/pipecat/services/inworld/tts.py598CODE
LOWsrc/pipecat/services/inworld/realtime/llm.py255CODE
LOWsrc/pipecat/services/asyncai/tts.py102CODE
LOWsrc/pipecat/services/asyncai/tts.py492CODE
LOWsrc/pipecat/services/openclaw/gateway.py67CODE
LOWsrc/pipecat/services/openclaw/client.py227CODE
LOWsrc/pipecat/services/speechmatics/stt.py385CODE
LOWsrc/pipecat/services/azure/tts.py281CODE
LOWsrc/pipecat/services/rime/tts.py169CODE
LOWsrc/pipecat/services/rime/tts.py930CODE
LOWsrc/pipecat/services/gladia/stt.py215CODE
LOWsrc/pipecat/services/google/tts.py1068CODE
LOWsrc/pipecat/services/google/tts.py1294CODE
LOWsrc/pipecat/services/google/llm.py205CODE
LOWsrc/pipecat/services/google/stt.py870CODE
LOWsrc/pipecat/services/google/vertex/llm.py63CODE
LOWsrc/pipecat/services/google/gemini_live/llm.py448CODE
LOWsrc/pipecat/services/google/gemini_live/vertex/llm.py60CODE
LOWsrc/pipecat/services/soniox/stt.py277CODE
LOWsrc/pipecat/services/fal/stt.py188CODE
LOWsrc/pipecat/services/deepgram/stt.py69CODE
LOWsrc/pipecat/services/deepgram/stt.py298CODE
LOWsrc/pipecat/services/deepgram/flux/stt.py105CODE
LOWsrc/pipecat/services/deepgram/sagemaker/stt.py93CODE
LOWsrc/pipecat/services/groq/stt.py40CODE
LOWsrc/pipecat/services/elevenlabs/tts.py248CODE
LOWsrc/pipecat/services/elevenlabs/tts.py681CODE
LOWsrc/pipecat/services/elevenlabs/stt.py504CODE
LOWsrc/pipecat/services/neuphonic/tts.py109CODE
LOWsrc/pipecat/services/nvidia/tts.py150CODE
LOWsrc/pipecat/services/nvidia/stt.py257CODE
LOWsrc/pipecat/services/nvidia/stt.py712CODE
LOWsrc/pipecat/services/heygen/api_liveavatar.py331CODE
17 more matches not shown…
Modern Structural Boilerplate52 hits · 50 pts
SeverityFileLineSnippetContext
LOWtests/test_ui_worker.py68async def _settle() -> None:CODE
LOWtests/test_vonage_video_connector.py355 def _setup_audio_ready_callback(self, client: VonageClient, call_ready_for_audio: bool) -> None:CODE
LOWtests/test_vonage_video_connector.py377 def _setup_subscriber_callbacks(self, client: VonageClient) -> None:CODE
LOWtests/test_vonage_video_connector.py439 async def set_event_when_drained() -> None:CODE
LOWtests/test_xai_stt.py22def _setup_service(service: XAISTTService, monkeypatch, sample_rate: int) -> None:CODE
LOWtests/test_assemblyai_stt.py31def _setup_service(service: AssemblyAISTTService, monkeypatch, sample_rate: int) -> None:CODE
LOWtests/aic_mocks.py51 def set_parameter(self, param: Any, value: float) -> None:CODE
LOWtests/aic_mocks.py74 def set_parameter(self, param: Any, value: float) -> None:CODE
LOWexamples/multi-worker/sensor-controller/sensor.py98 def set_target(self, value: float) -> None:CODE
LOWexamples/multi-worker/sensor-controller/sensor.py102 def set_response_rate(self, rate: float) -> None:CODE
LOWsrc/pipecat/pipeline/task.py23__all__ = [CODE
LOWsrc/pipecat/pipeline/runner.py20__all__ = ["PipelineRunner", "WorkerRunner"]CODE
LOWsrc/pipecat/evals/serializer.py112 def set_capture_audio(self, capture: bool) -> None:CODE
LOWsrc/pipecat/transports/smallwebrtc/connection.py149 def set_enabled(self, enabled: bool) -> None:CODE
LOWsrc/pipecat/bus/__init__.py58__all__ = [CODE
LOWsrc/pipecat/bus/ui/__init__.py19__all__ = [CODE
LOWsrc/pipecat/bus/network/pgmq_backends.py342__all__ = [CODE
LOWsrc/pipecat/bus/network/__init__.py20__all__ = ["PgmqBus", "RedisBus"]CODE
LOWsrc/pipecat/bus/local/__init__.py11__all__ = ["AsyncQueueBus"]CODE
LOWsrc/pipecat/bus/adapters/__init__.py17__all__ = [CODE
LOWsrc/pipecat/bus/serializers/__init__.py16__all__ = [CODE
LOWsrc/pipecat/utils/deprecation.py76__all__ = ["DEPRECATION_MESSAGE_RE", "deprecated", "warn_deprecated_read"]CODE
LOWsrc/pipecat/utils/errors.py17__all__ = [CODE
LOWsrc/pipecat/utils/text/transforms/__init__.py38__all__ = [CODE
LOWsrc/pipecat/cli/registry/__init__.py19__all__ = [CODE
LOWsrc/pipecat/cli/prompts/__init__.py11__all__ = ["ProjectConfig", "ask_project_questions"]CODE
LOWsrc/pipecat/cli/commands/__init__.py11__all__ = ["init"]CODE
LOWsrc/pipecat/cli/commands/init.py418def _setup_context_hub() -> None:CODE
LOWsrc/pipecat/cli/generators/__init__.py11__all__ = ["ProjectGenerator"]CODE
LOWsrc/pipecat/extensions/ivr/ivr_navigator.py101 def update_saved_messages(self, messages: list[LLMContextMessage]) -> None:CODE
LOWsrc/pipecat/processors/frameworks/rtvi/__init__.py27__all__ = [CODE
LOWsrc/pipecat/serializers/genesys.py243 def set_output_variables(self, variables: dict[str, Any]) -> None:CODE
LOWsrc/pipecat/audio/vad/aic_quail_vad.py250 def set_sample_rate(self, sample_rate: int) -> None:CODE
LOWsrc/pipecat/registry/__init__.py11__all__ = [CODE
LOWsrc/pipecat/workers/runner.py377 async def _setup_session(self) -> None:CODE
LOWsrc/pipecat/workers/runner.py540 def _setup_sigint(self) -> None:CODE
LOWsrc/pipecat/workers/runner.py549 def _setup_sigterm(self) -> None:CODE
LOWsrc/pipecat/workers/ui/__init__.py34__all__ = [CODE
LOWsrc/pipecat/workers/llm/__init__.py13__all__ = [CODE
LOWsrc/pipecat/workers/proxy/__init__.py14__all__ = [CODE
LOWsrc/pipecat/workers/proxy/websocket/__init__.py12__all__ = [CODE
LOWsrc/pipecat/turns/user_start/__init__.py19__all__ = [CODE
LOWsrc/pipecat/turns/user_stop/__init__.py15__all__ = [CODE
LOWsrc/pipecat/turns/user_mute/__init__.py15__all__ = [CODE
LOWsrc/pipecat/flows/__init__.py48__all__ = [CODE
LOWsrc/pipecat/flows/manager.py588 async def set_node_from_config(self, node_config: NodeConfig) -> None:CODE
LOWsrc/pipecat/flows/manager.py602 async def _set_node(self, node_id: str, node_config: NodeConfig) -> None:CODE
LOWsrc/pipecat/services/deepgram/flux/tts.py29__all__ = [CODE
LOWsrc/pipecat/services/deepgram/flux/stt.py31__all__ = [CODE
LOWsrc/pipecat/services/elevenlabs/tts.py62__all__ = [CODE
LOWsrc/pipecat/services/hume/tts.py261 async def update_setting(self, key: str, value: Any) -> None:CODE
LOWsrc/pipecat/services/openai/responses/llm.py1454__all__ = [CODE
Structural Annotation Overuse28 hits · 47 pts
SeverityFileLineSnippetContext
LOWCOMMUNITY_INTEGRATIONS.md17### Step 1: Build Your IntegrationCOMMENT
LOWCOMMUNITY_INTEGRATIONS.md21### Step 2: Set Up Your RepositoryCOMMENT
LOWCOMMUNITY_INTEGRATIONS.md39### Step 3: Join DiscordCOMMENT
LOWCOMMUNITY_INTEGRATIONS.md43### Step 4: Submit Your DocumentationCOMMENT
LOW.claude/skills/update-docs/SKILL.md33### Step 1: Resolve docs path and profileCOMMENT
LOW.claude/skills/update-docs/SKILL.md45### Step 2: Create docs branchCOMMENT
LOW.claude/skills/update-docs/SKILL.md63### Step 3: Detect changed source filesCOMMENT
LOW.claude/skills/update-docs/SKILL.md90### Step 4: Map source files to doc pagesCOMMENT
LOW.claude/skills/update-docs/SKILL.md109### Step 5: Analyze each source-doc pairCOMMENT
LOW.claude/skills/update-docs/SKILL.md128### Step 6: Make targeted editsCOMMENT
LOW.claude/skills/update-docs/SKILL.md214### Step 7: Update guidesCOMMENT
LOW.claude/skills/update-docs/SKILL.md234### Step 8: Identify doc gapsCOMMENT
LOW.claude/skills/update-docs/SKILL.md266### Step 9: Format and regenerate llms.txtCOMMENT
LOW.claude/skills/update-docs/SKILL.md290### Step 10: Output summaryCOMMENT
LOW.claude/skills/provider-watch/SKILL.md30### Step 1: Resolve paths and prerequisitesCOMMENT
LOW.claude/skills/provider-watch/SKILL.md46### Step 2: Build the unit listCOMMENT
LOW.claude/skills/provider-watch/SKILL.md54### Step 3: Research in batchesCOMMENT
LOW.claude/skills/provider-watch/SKILL.md84### Step 4: HighlightsCOMMENT
LOW.claude/skills/provider-watch/SKILL.md88### Step 5: Publish or askCOMMENT
LOW.claude/skills/provider-watch/SKILL.md94### Step 6: Clean up and summarizeCOMMENT
LOWsrc/pipecat/adapters/services/perplexity_adapter.py129 # Step 1: Convert non-initial system messages to "user".COMMENT
LOWsrc/pipecat/adapters/services/perplexity_adapter.py140 # Step 2: Merge consecutive same-role messages.COMMENT
LOWsrc/pipecat/adapters/services/perplexity_adapter.py166 # Step 3: Remove trailing assistant messages.COMMENT
LOWsrc/pipecat/adapters/services/mistral_adapter.py109 # Step 1: ensure every "tool" message is followed by an "assistant".COMMENT
LOWsrc/pipecat/adapters/services/mistral_adapter.py119 # Step 2: convert non-initial system messages to "user".COMMENT
LOWsrc/pipecat/adapters/services/mistral_adapter.py129 # Step 3: set prefix on a trailing assistant message so Mistral willCOMMENT
LOWsrc/pipecat/services/google/gemini_live/file_api.py74 # Step 1: Initial resumable request to get upload URLCOMMENT
LOWsrc/pipecat/services/google/gemini_live/file_api.py100 # Step 2: Upload the actual file dataCOMMENT
Magic Placeholder Names13 hits · 32 pts
SeverityFileLineSnippetContext
HIGHsrc/pipecat/services/together/tts.py65 api_key="your-api-key",STRING
HIGHsrc/pipecat/services/together/stt.py57 api_key="your-api-key",STRING
HIGHsrc/pipecat/services/deepgram/flux/stt.py158 stt = DeepgramFluxSTTService(api_key="your-api-key")STRING
HIGHsrc/pipecat/services/deepgram/flux/stt.py163 api_key="your-api-key",STRING
HIGHsrc/pipecat/services/deepgram/flux/stt.py176 api_key="your-api-key",STRING
HIGHsrc/pipecat/services/camb/tts.py171 api_key="your-api-key",STRING
HIGHsrc/pipecat/services/camb/tts.py179 api_key="your-api-key",STRING
HIGHsrc/pipecat/services/smallest/tts.py109 api_key="your-api-key",STRING
HIGHsrc/pipecat/services/smallest/stt.py145 api_key="your-api-key",STRING
HIGHsrc/pipecat/services/sarvam/tts.py322 api_key="your-api-key",STRING
HIGHsrc/pipecat/services/sarvam/tts.py336 api_key="your-api-key",STRING
HIGHsrc/pipecat/services/sarvam/tts.py681 api_key="your-api-key",STRING
HIGHsrc/pipecat/services/sarvam/tts.py694 api_key="your-api-key",STRING
Overly Generic Function Names15 hits · 16 pts
SeverityFileLineSnippetContext
LOWtests/test_flows_direct_functions.py27 async def my_function(flow_manager: FlowManager):CODE
LOWtests/test_flows_direct_functions.py249 async def my_function(flow_manager: DummyFlowManager, name: str, age: int):CODE
LOWtests/test_flows_direct_functions.py270 async def my_function(flow_manager: FlowManager):CODE
LOWtests/test_flows_direct_functions.py280 async def my_function(flow_manager: FlowManager):CODE
LOWtests/test_flows_direct_functions.py290 async def my_function(flow_manager: FlowManager):CODE
LOWtests/test_flows_direct_functions.py320 async def my_function(flow_manager: FlowManager):CODE
LOWtests/test_flows_direct_functions.py330 async def my_function(flow_manager: FlowManager):CODE
LOWtests/test_flows_direct_functions.py366 async def my_function(flow_manager: FlowManager):CODE
LOWtests/test_flows_direct_functions.py381 async def my_function(flow_manager: FlowManager):CODE
LOWtests/test_flows_direct_functions.py190 async def my_function(flow_manager: FlowManager, name: str, age: int, height: float | None):CODE
LOWtests/test_direct_functions.py17 async def my_function(params: FunctionCallParams):CODE
LOWtests/test_direct_functions.py156 async def my_function(CODE
LOWtests/test_direct_functions.py212 async def my_function(params: DummyParams, name: str, age: int):CODE
LOW…js/src/app/api/sessions/[sessionId]/[...path]/route.ts3async function handleRequest(CODE
LOWsrc/pipecat/workers/llm/llm_worker.py77 async def my_function(self, params, arg: str):STRING
Cross-Language Confusion3 hits · 15 pts
SeverityFileLineSnippetContext
HIGHtests/test_runner_run.py872 _parse_ice_servers('{"urls": "stun:stun.example.com:3478", "username": null}'),CODE
HIGHsrc/pipecat/services/openai/realtime/llm.py1137 - return trueSTRING
HIGHsrc/pipecat/services/openai/realtime/llm.py1139 - return falseSTRING
Verbosity Indicators8 hits · 15 pts
SeverityFileLineSnippetContext
LOWsrc/pipecat/adapters/services/perplexity_adapter.py129 # Step 1: Convert non-initial system messages to "user".COMMENT
LOWsrc/pipecat/adapters/services/perplexity_adapter.py140 # Step 2: Merge consecutive same-role messages.COMMENT
LOWsrc/pipecat/adapters/services/perplexity_adapter.py166 # Step 3: Remove trailing assistant messages.COMMENT
LOWsrc/pipecat/adapters/services/mistral_adapter.py109 # Step 1: ensure every "tool" message is followed by an "assistant".COMMENT
LOWsrc/pipecat/adapters/services/mistral_adapter.py119 # Step 2: convert non-initial system messages to "user".COMMENT
LOWsrc/pipecat/adapters/services/mistral_adapter.py129 # Step 3: set prefix on a trailing assistant message so Mistral willCOMMENT
LOWsrc/pipecat/services/google/gemini_live/file_api.py74 # Step 1: Initial resumable request to get upload URLCOMMENT
LOWsrc/pipecat/services/google/gemini_live/file_api.py100 # Step 2: Upload the actual file dataCOMMENT
Dead Code6 hits · 12 pts
SeverityFileLineSnippetContext
MEDIUMtests/test_segmented_stt.py50CODE
MEDIUMtests/test_anthropic_thinking_defaults.py134CODE
MEDIUMsrc/pipecat/services/stt_service.py348CODE
MEDIUMsrc/pipecat/services/vision_service.py63CODE
MEDIUMsrc/pipecat/services/tts_service.py555CODE
MEDIUMsrc/pipecat/services/image_service.py61CODE
Fake / Example Data9 hits · 10 pts
SeverityFileLineSnippetContext
LOWtests/test_voice_formatting.py299 result = await email_to_speech("user@example.com", "*")CODE
LOWtests/test_voice_formatting.py304 result = await email_to_speech("user@example.com", "*")CODE
LOWtests/test_deepgram_stt.py381 service = DeepgramSTTService(api_key="fake-key-offline-test")CODE
LOWtests/test_get_llm_invocation_params.py1098 "source": {"type": "base64", "media_type": "image/jpeg", "data": "fake_data"},CODE
LOWtests/genesys/conftest.py129 "name": "John Doe",CODE
LOWtests/genesys/test_genesys_serializer.py304 assert serializer.participant["name"] == "John Doe"CODE
LOWexamples/features/features-text-transforms.py24 - email_to_speech "user@example.com" → "user at example dot com"STRING
LOW…ipecat/cli/templates/client/vanilla-js-vite/src/app.js53 'placeholder',CODE
LOW…ipecat/cli/templates/client/vanilla-js-vite/src/app.js192 if (role === 'placeholder') {CODE
AI Response Leakage1 hit · 8 pts
SeverityFileLineSnippetContext
HIGHexamples/realtime/realtime-openai-live-video.py96 # In this example we provide tools through the context, but you couldCOMMENT
Slop Phrases3 hits · 5 pts
SeverityFileLineSnippetContext
MEDIUMexamples/realtime/realtime-gemini-live.py141 # frames, but you can add supplemental local turn frames for consumptionSTRING
MEDIUMexamples/realtime/realtime-ultravox.py184 # frames, but you can add supplemental local turn frames for consumptionSTRING
MEDIUMexamples/realtime/realtime-aws-nova-sonic.py130 # frames, but you can add supplemental local turn frames for consumptionCOMMENT
TODO Padding1 hit · 2 pts
SeverityFileLineSnippetContext
LOWsrc/pipecat/services/google/gemini_live/llm.py898 # TODO: implement runtime tool updates for Gemini Live.COMMENT
Example Usage Blocks1 hit · 2 pts
SeverityFileLineSnippetContext
LOWsrc/pipecat/services/piper/tts.py195# Usage:COMMENT