Fatti :
A.- B._, nata nel 1954 e domiciliata ad A._, di formazione impiegata di commercio, ha esercitato dapprima la professione di segretaria ed in seguito quella di contadina. In data 15 aprile 1997 ha presentato all'Ufficio dell'assicurazione invalidità (UAI) del Cantone Ticino una richiesta di prestazioni per adulti, intesa ad ottenere provvedimenti medici speciali di reintegrazione o una rendita. Secondo rapporti redatti il 6 maggio 1997 dal dott. P._ ed il 9 maggio seguente dal dott.
D._, l'interessata presentava prevalentemente un problema psichico, essendo in particolare affetta da disturbo della personalità (borderline) ed etilismo. A seguito del trasferimento del proprio domicilio nel Canton B._, il 16 gennaio 1998, l'assicurata ha presentato la medesima domanda all'amministrazione bernese. La pratica è però stata trattata sino a conclusione dall'UAI ticinese, il quale ha esperito l'istruttoria facendo allestire una perizia psichiatrica redatta dal dott. K._, specialista in psichiatria e psicoterapia (del 3 marzo 1998), come pure un'indagine da parte dell'orientatore professionale dell'UAI b._, compilata il 4 giugno 1998.
Con decisione 23 ottobre 1998 l'UAI del Cantone Ticino ha assegnato a B._, con effetto dal 1° aprile 1997, una mezza rendita d'invalidità.
B.- Patrocinata dall'avv. S. M._, di B._, avverso tale provvedimento l'assicurata è insorta con ricorso al Tribunale delle assicurazioni del Cantone Ticino, postulando l'assegnazione di una rendita intera.
Con giudizio del 20 gennaio 2000 l'autorità giudiziaria cantonale ha respinto il gravame.
C.- B._, rappresentata dall'avv. B._, di B._, interpone al Tribunale federale delle assicurazioni un ricorso di diritto amministrativo. Ribadisce la conclusione intesa ad ottenere una rendita d'invalidità intera e postula di essere messa al beneficio dell'assistenza giudiziaria gratuita.
L'UAI chiede la disattenzione del gravame, mentre l'Ufficio federale delle assicurazioni sociali ha rinunciato a determinarsi.

Diritto :
1.- Nei considerandi dell'impugnato giudizio la precedente istanza ha illustrato in modo pertinente e completo le norme legali ed i principi di giurisprudenza applicabili in concreto, per cui a detta esposizione basta fare semplicemente riferimento.
2.- a) Nel caso di specie, per stabilire l'incapacità lavorativa e di guadagno della ricorrente dovuta ai disturbi di carattere psichico di cui soffre, la Corte cantonale si è segnatamente fondata, come lo aveva già fatto l'Ufficio opponente, sulla circostanziata relazione specialistica redatta dal dott. K._ in data 3 marzo 1998, nonché sul referto dell'indagine operata dall'orientatore professionale b._, stilato il 4 giugno 1998. Il giudice di prime cure ha constatato che al termine di accertamenti particolarmente approfonditi il menzionato sanitario aveva posto la diagnosi di sindrome borderline e valutato il tasso d'incapacità lavorativa in entrambe le attività svolte dall'assicurata prima dell'insorgenza del danno alla salute (segretaria d'ufficio e contadina) pari al 50 %. Egli ha pure rilevato che tali conclusioni corrispondevano sostanzialmente al parere espresso dal dott. S._, medico di fiducia di cui l'insorgente chiedeva l'esperimento di una perizia medica complementare. Per quanto attiene al grado d'invalidità dell'assicurata, la Corte di prima istanza ha posto in evidenza come secondo l'orientatore professionale fosse esigibile sia un'attività di vendita di alimentari sia la ripresa della precedente professione nel campo agricolo. Questi aveva inoltre suggerito l'assegnazione di una rendita d'invalidità parziale.
b) In siffatte circostanze, l'opinione della precedente autorità di ricorso risulta convincente sotto ogni aspetto e non può pertanto che essere condivisa. Le censure sollevate dall'insorgente in questa sede non sono suscettibili di sovvertire quanto affermato nel giudizio impugnato.
Esse si esauriscono in sostanza nell'invocare una pretesa contraddizione ravvisata nel succitato referto specialistico del dott. K._, il quale sarebbe peraltro fondato su documenti medici insufficienti. Detto sanitario avrebbe in effetti riscontrato da un lato una residua capacità lavorativa del 50 %, ma dall'altro ammesso che dal profilo medico, ritenuta la costituzione della paziente, tali prospettive risultavano difficilmente realizzabili a lunga scadenza. Ora, come è già stato esposto nella pronunzia contestata, il grado d'invalidità non può essere fondato sulla mera valutazione medica, bensì deve corrispondere al grado dell'incapacità di guadagno tenuto conto di ogni attività ragionevolmente esigibile dall'assicurato (<ref-ruling> consid. 2b, 400, con i rispettivi riferimenti).
Per il resto, le critiche avanzate dall'insorgente sono identiche in sostanza a quelle addotte dinanzi all'autorità di ricorso cantonale: inconsistenti, esse non possono essere tutelate.
c) In esito alle suesposte considerazioni, il ricorso risulta infondato, mentre merita conferma il giudizio impugnato.
3.- La ricorrente sollecita di essere messa al beneficio dell'assistenza giudiziaria gratuita.
La procedura è gratuita (art. 134 OG). Per quanto concerne la domanda intesa ad ottenere la concessione del gratuito patrocinio (art. 152 cpv. 2 OG in relazione con l'art. 135 OG), occorre considerare che la situazione di bisogno dell'assicurata non dà adito a dubbi e che il ricorso non appariva necessariamente sprovvisto di possibilità di esito favorevole. Inoltre la fattispecie poneva quesiti giuridici di non facile soluzione, per cui non si poteva pretendere che ella difendesse i suoi interessi senza ricorrere all'ausilio di un patrocinatore. L'istanza va quindi accolta, riservato essendo l'eventuale suo obbligo di rimborso (art. 152 cpv. 3 OG).

Per questi motivi, il Tribunale federale delle assicurazioni
pronuncia :
I.Il ricorso di diritto amministrativo è respinto.
II.Non si percepiscono spese giudiziarie.
III. La domanda di assistenza giudiziaria gratuita è accolta.
La Cassa del Tribunale rifonderà al patrocinatore
della ricorrente fr. 1000.- (comprensivo dell'imposta
sul valore aggiunto) a titolo di patrocinio per la
procedura federale.
IV. La presente sentenza sarà intimata alle parti, al Tribunale cantonale delle assicurazioni, Lugano, e all'Ufficio federale delle assicurazioni sociali.