PHPackages                             conduit-ui/know - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. conduit-ui/know

AbandonedArchivedLibrary[Utility &amp; Helpers](/categories/utility)

conduit-ui/know
===============

Agent domain knowledge - how/why/what/remember

01[3 issues](https://github.com/conduit-ui/know/issues)PHP

Since Dec 11Pushed 5mo agoCompare

[ Source](https://github.com/conduit-ui/know)[ Packagist](https://packagist.org/packages/conduit-ui/know)[ RSS](/packages/conduit-ui-know/feed)WikiDiscussions main Synced 1mo ago

READMEChangelogDependenciesVersions (1)Used By (0)

Know - Memory for AI Agents That Actually Makes Sense
=====================================================

[](#know---memory-for-ai-agents-that-actually-makes-sense)

[![Latest Version on Packagist](https://camo.githubusercontent.com/e21d6be7653dc5157cfc0879014a3074666ae4895f708c786fce6f9ce3c9b9c8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f636f6e647569742d75692f6b6e6f772e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/conduit-ui/know)[![Total Downloads](https://camo.githubusercontent.com/b6641a9a966d8c8c3acbf3371ea83dd6e2e8596c71cf748a59b3e96078e087f5/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f636f6e647569742d75692f6b6e6f772e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/conduit-ui/know)[![License](https://camo.githubusercontent.com/28ccc62c3e049a2cdf2c45cac6f49e4510c1c935a26fabe173651d2126f95dd8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f6c2f636f6e647569742d75692f6b6e6f772e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/conduit-ui/know)

Stop dumping everything into vector databases and hoping semantic search figures it out. Start organizing knowledge the way developers actually think: how does this work? why was this decision made? what is this thing?

**Perfect for:** AI agent memory systems, developer knowledge bases, architectural decision records, pattern libraries

Quick Start
-----------

[](#quick-start)

```
composer require conduit-ui/know
```

```
use ConduitUI\Know\Facades\Know;
use ConduitUI\Know\Data\Insight;

// Remember a decision
Know::remember(
    Insight::decision(
        'Use Saloon for HTTP',
        'Chose Saloon over Guzzle because we need request/response objects and middleware support',
        tags: ['architecture', 'http']
    )
);

// Ask questions naturally
$patterns = Know::how('authenticate with GitHub');
$decisions = Know::why('chose Saloon');
$definitions = Know::what('is a connector');
```

Features
--------

[](#features)

- **Natural query API** - `how()`, `why()`, `what()` methods that match how developers think
- **Typed insights** - Decisions, patterns, facts, discoveries with structured metadata
- **Multiple storage backends** - In-memory for testing, database for production, custom stores via interface
- **Sync across sources** - Pull from GitHub issues, push to Notion, sync between systems
- **Laravel integration** - Service provider, facade, zero config
- **Tag-based organization** - Find knowledge by project, domain, or custom taxonomy

Why This Exists
---------------

[](#why-this-exists)

Vector databases are great for semantic similarity. But when you're building an AI agent that needs to understand "why did we choose this architecture?" or "how does authentication work in this codebase?", you need structured knowledge with intent.

Know gives your agents a memory system organized by question type, not just embedding proximity.

Usage
-----

[](#usage)

### Remembering Knowledge

[](#remembering-knowledge)

```
use ConduitUI\Know\Data\Insight;
use ConduitUI\Know\Facades\Know;

// Record a decision
Know::remember(
    Insight::decision(
        'Use Laravel Octane',
        'Moving to Octane for 3x performance improvement on API endpoints',
        tags: ['performance', 'infrastructure']
    )
);

// Record a pattern
Know::remember(
    Insight::pattern(
        'Repository Pattern',
        'All database access goes through repositories in app/Repositories/',
        tags: ['architecture', 'database']
    )
);

// Record a fact
Know::remember(
    Insight::fact(
        'Primary Database',
        'Production uses RDS PostgreSQL 14 in us-east-1',
        tags: ['infrastructure', 'database']
    )
);

// Record a discovery
Know::remember(
    Insight::discovery(
        'Rate Limit Pattern',
        'GitHub API returns rate limit info in X-RateLimit-* headers',
        tags: ['github', 'api']
    )
);
```

### Querying Knowledge

[](#querying-knowledge)

```
// How does something work?
$patterns = Know::how('handle GitHub webhooks');
// Returns: patterns, implementations, how-it-works insights

// Why was a decision made?
$decisions = Know::why('chose PostgreSQL');
// Returns: decisions, rationale, why-it-exists insights

// What is something?
$definitions = Know::what('is Saloon');
// Returns: facts, definitions, discovery insights

// Search everything
$results = Know::search('authentication', types: ['decision', 'pattern']);
```

### Working with Results

[](#working-with-results)

```
$insights = Know::how('authenticate');

foreach ($insights as $insight) {
    echo $insight->title;      // "OAuth2 Flow"
    echo $insight->content;    // "We use Laravel Passport for..."
    echo $insight->type;       // "pattern"
    print_r($insight->tags);   // ['auth', 'security']
    echo $insight->createdAt;  // Carbon instance
}
```

### Syncing Across Sources

[](#syncing-across-sources)

```
use ConduitUI\Know\Facades\Know;

// Pull from GitHub issues, push to your knowledge base
Know::sync()
    ->register(new GitHubIssuesAdapter($token))
    ->from('github')
    ->run();

// Export to another system
Know::sync()
    ->register(new NotionAdapter($apiKey))
    ->to('notion')
    ->run();
```

### Custom Storage

[](#custom-storage)

Implement `KnowledgeStore` for your own backend:

```
use ConduitUI\Know\Contracts\KnowledgeStore;
use ConduitUI\Know\Data\Insight;
use Illuminate\Support\Collection;

class RedisKnowledgeStore implements KnowledgeStore
{
    public function search(string $query, array $types = []): Collection
    {
        // Your search logic
    }

    public function persist(Insight $insight): Insight
    {
        // Your persistence logic
    }

    public function all(array $types = []): Collection
    {
        // Return all insights
    }

    public function find(string|int $id): ?Insight
    {
        // Find by ID
    }
}
```

Then bind it in your service provider:

```
$this->app->bind(
    \ConduitUI\Know\Contracts\KnowledgeStore::class,
    RedisKnowledgeStore::class
);
```

Configuration
-------------

[](#configuration)

Publish the config file (optional):

```
php artisan vendor:publish --tag=know-config
```

The default in-memory store works out of the box for testing. For production, implement a persistent store.

Use Cases
---------

[](#use-cases)

### AI Agent Memory

[](#ai-agent-memory)

Give your AI agent structured memory about your codebase:

```
// Agent learns during development
Know::remember(Insight::decision(
    'Use Job Batching',
    'Switched from sequential jobs to batched jobs for import performance',
    tags: ['performance', 'jobs']
));

// Agent recalls later when asked
$context = Know::why('use job batching');
// Agent can now explain the decision with full context
```

### Architectural Decision Records

[](#architectural-decision-records)

Stop maintaining separate ADR markdown files:

```
Know::remember(Insight::decision(
    'ADR-001: Event Sourcing',
    'Adopting event sourcing for order processing to enable time-travel debugging and audit trails',
    tags: ['adr', 'architecture', 'orders']
));
```

### Pattern Library

[](#pattern-library)

Document your team's patterns in code:

```
Know::remember(Insight::pattern(
    'Controller Pattern',
    'Controllers are thin - validation in FormRequests, logic in Actions',
    tags: ['laravel', 'patterns']
));
```

Related Packages
----------------

[](#related-packages)

The conduit-ui ecosystem:

- **[conduit-ui/connector](https://github.com/conduit-ui/connector)** - GitHub API transport layer (foundation for GitHub sync adapters)

More packages coming soon.

Requirements
------------

[](#requirements)

- PHP 8.2 or higher
- Laravel 10.x, 11.x, or 12.x (for Laravel integration)
- Or use standalone with Illuminate/Support

Testing
-------

[](#testing)

```
composer test
```

Support
-------

[](#support)

**Enterprise support available** - Need custom adapters, training, or priority support? Email

**Community** - Open an issue on [GitHub](https://github.com/conduit-ui/know/issues) or contribute a PR.

License
-------

[](#license)

MIT License. See [LICENSE](LICENSE) for details.

###  Health Score

17

—

LowBetter than 6% of packages

Maintenance49

Moderate activity, may be stable

Popularity1

Limited adoption so far

Community6

Small or concentrated contributor base

Maturity12

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/a6bb27de88a541a632427686306c8fc56366d72582f6a3316d20500efe7971f3?d=identicon)[conduit-ui](/maintainers/conduit-ui)

---

Top Contributors

[![jordanpartridge](https://avatars.githubusercontent.com/u/9040417?v=4)](https://github.com/jordanpartridge "jordanpartridge (3 commits)")

### Embed Badge

![Health badge](/badges/conduit-ui-know/health.svg)

```
[![Health](https://phpackages.com/badges/conduit-ui-know/health.svg)](https://phpackages.com/packages/conduit-ui-know)
```

###  Alternatives

[stefangabos/zebra_pagination

A generic, Twitter Bootstrap compatible, PHP pagination library that automatically generates navigation links

11122.9k](/packages/stefangabos-zebra-pagination)[dannyvanholten/acf-gravityforms-add-on

Advanced Custom Fields: Gravity Forms Add-on

7943.0k](/packages/dannyvanholten-acf-gravityforms-add-on)[danielme85/laravel-cconverter

Laravel 5 plug-in for currency conversion

42101.1k](/packages/danielme85-laravel-cconverter)[inpsyde/google-tag-manager

Adds the Google Tag Manager container snippet to your site and populates the Google Tag Manager Data Layer.

2359.7k](/packages/inpsyde-google-tag-manager)[cagartner/bagisto-brazilcustomer

112.9k](/packages/cagartner-bagisto-brazilcustomer)[codein/ibexa-seo-toolkit

Ibexa Toolkit to advise users on best SEO practices.

112.5k](/packages/codein-ibexa-seo-toolkit)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
